我正在研究一個小的ajax應用程序,並且需要查看在後臺生成的值是否是預期的。由任務返回的值可以是相當複雜的多維數組,是否有方法將其轉換爲字符串,以便可以使用alert來顯示它?PHP - 將多維數組轉換爲字符串?
是否有任何其他方式看到這些值?
任何意見讚賞。
謝謝。
我正在研究一個小的ajax應用程序,並且需要查看在後臺生成的值是否是預期的。由任務返回的值可以是相當複雜的多維數組,是否有方法將其轉換爲字符串,以便可以使用alert來顯示它?PHP - 將多維數組轉換爲字符串?
是否有任何其他方式看到這些值?
任何意見讚賞。
謝謝。
print_r
,var_dump
或var_export
是很好的候選人。在編寫ajax應用程序時,您可能還需要查看json_encode
。
如果你想用JavaScript顯示它,我會推薦json_encode()
,其他所有內容都被knittl的答案所覆蓋。
<script type="text/javascript">
alert(<?=print_r($array)?>);
</script>
你也可以考慮FirePHP http://www.firephp.org
我發現這個功能很有用:
function array2str($array, $pre = '', $pad = '', $sep = ', ')
{
$str = '';
if(is_array($array)) {
if(count($array)) {
foreach($array as $v) {
$str .= $pre.$v.$pad.$sep;
}
$str = substr($str, 0, -strlen($sep));
}
} else {
$str .= $pre.$array.$pad;
}
return $str;
}
從這個地址: http://blog.perplexedlabs.com/2008/02/04/php-array-to-string/
我在一堆Ajax應用程序的工作。在firefox中,我有一個名爲JSON視圖的「插件」
然後我所有的項目都有一個功能
function test_array($array) {
header("Content-Type: application/json");
echo json_encode($array);
exit();
}
所以每當我想看到的輸出,我只是去test_array($something)
什麼,它讓我看到結果。
其製作調試breaze現在
PS。知道這個Q是古老和IM沒有真正回答原始的海報Q,但可能對別人有用的藏漢
這裏是PHP一個簡單的答案:
function implode_recur($separator, $arrayvar) {
$output = "";
foreach ($arrayvar as $av)
if (is_array ($av))
$out .= implode_recur($separator, $av); // Recursive array
else
$out .= $separator.$av;
return $out;<br>
}
$result = implode_recur(">>",$variable);
這裏有幾個錯別字...在implode_recur中,對implode_r的引用應該是implode_recur.Also將$ out的兩個實例更改爲$ output。這也將在數組中的第一個元素之前添加分隔符字符串...「>> a >> b >>」,這在所有情況下都可能不合需要。 – user2782001 2016-03-18 23:43:21
非常感謝@ user2782001。我已糾正它。 – kachmi 2016-03-21 07:20:13
var_export的輸出可以被保存到一個變量: $ a = array(1,2,array(「a」,「b」,「c」)); $ b = var_export($ a,true); echo $ b; – ken 2014-07-08 09:00:59