我想知道是否有方法只打印沒有內容的數組結構。我通常使用print_r來檢查結構,但因爲我的數組包含一些二進制數據,所以我寧願不使用它。打印沒有內容的數組結構?
5
A
回答
12
<?php
function print_no_contents($arr) {
foreach ($arr as $k=>$v) {
echo $k."=> ";
if (is_array($v)) {
echo "\n";
print_no_contents($v);
}
else echo "[data]";
echo "\n";
}
}
?>
*沒有測試這個,但應該讓你開始。
+0
向你的函數中添加一個名爲'$ count = 0'的第二個參數,並將該函數調用爲'print_no_contents($ v,++ $ count);'在前面執行'strrepeat('',$ count)'' ''echo $ k。'=>''部分爲了得到一些不錯的縮進:) – Jelmer 2012-12-24 23:49:16
1
想不出你只是做
foreach ($array as $structure=>$data){
echo $structure."=><br />";
}
+0
這可以作爲一個初學者,很好的答案,但它只會做數組的頂層。你需要做這樣的事情來獲得完整的結構: 'function output_array_structure($ array,$ type =「」){ echo「
- 」; foreach($ array as $ structure => $ data){ echo「
- $ structure 」;如果(is_array($ data)){ output_array_structure($ data,「type ='a'」); } } echo「
1
我喜歡用xdebug's var_dump() overload我所有的變量窺探的。你可以給它提供一個ini設置來截斷被捨棄的值,它提供了一些理智的限制(儘管我不確定它通常用二進制數據做什麼)。
ini_set('xdebug.var_display_max_data', 0); var_dump($your_variable);
1
在這裏下載與數據陣列結構
echo printArray($your_array);
function printArray($a,$return=true) {
if(!$return)
echo "<pre style=\"font-size:12px;\">".print_r($a,true)."</pre>";
else
return "<pre style=\"font-size:12px;\">".print_r($a,true)."</pre>";
}
相關問題
- 1. 帶有數組結構的Qsort更改結構的內容
- 2. 打印二維數組的內容
- 3. 嵌套數組的打印內容
- 4. 打印整個QWebView內容沒有按預期的結果
- 5. 打印一個結構數組
- 6. 結構數組打印不正確| C++
- 7. 有沒有可以打印出malloc數據結構的命令?
- 8. c#數組不打印內容
- 9. 打印內容
- 10. 打印內容
- 11. 打印內容
- 12. 打印數據結構
- 13. 如何打印C中結構的內容?
- 14. 散列和數組的Perl散列 - 打印數組內容
- 15. PYTHON打印功能,沒有結果,打印時沒有錯誤
- 16. 有沒有辦法打印多模塊maven項目的結構?
- 17. 有沒有辦法打印一個特定DIV的內容
- 18. 打印iframe內容
- 19. 打印內容DefaultTreeModel
- 20. 打印ScrollViewer內容
- 21. 的Javascript打印iframe的內容只有
- 22. 如何將羣組內容的內容發送到打印機
- 23. 打印具有屏幕內容的UITableView?
- 24. 打印float結構的值
- 25. Lisp中的打印結構
- 26. 打印第一列並打印%符號後的所有內容
- 27. 打印HTML DIV的內容
- 28. WPF - 打印ListView的內容?
- 29. 打印內容的Rails
- 30. div的打印內容
寫自己的遞歸函數模擬print_r的? – 2010-04-16 04:47:35