Maison  >  Article  >  développement back-end  >  php5.1.6情况下,出现RECURSION。求破!!!

php5.1.6情况下,出现RECURSION。求破!!!

WBOY
WBOYoriginal
2016-06-23 14:40:131401parcourir

$m = array('1');
$m['a'] = $m;
print_r($m);
die;
?>

这是简单的一个测试。输出的结果是
Array ( [0] => 1 [a] => Array *RECURSION* )

但是我想要的结果是:
Array ( [0] => 1 [a] => Array ( [0] => 1 ) )

应该改那个地方? 求大神解答


回复讨论(解决方案)

求大神解答  有人碰到过这问题吗?

没人理啊没人理么? 

RECURSION 递归
当出现递归现象时 print_r 就是这样显示结果的
这是正确的,因为 print_r 只不过是调试用的,意思到了就行了

RECURSION 递归
当出现递归现象时 print_r 就是这样显示结果的
这是正确的,因为 print_r 只不过是调试用的,意思到了就行了


但是我把这个$m 拿去json_encode 的时候,就没有返回值了啊?

你的 php 版本太低,json_encode 出点错是正常的

php5.2.5 都不能处理这种情况
json_encode() [function.json-encode]:  recursion detected 

我的PHP Version 5.3.27输出结果正是Array ( [0] => 1 [a] => Array ( [0] => 1 ) ) 

你的 php 版本太低,json_encode 出点错是正常的

是php版本的问题。高版本的php我测试过。 是可以的。 
 我现在是php5.1.6  json_encode方法是自己加上去的。

多谢各路大神。
 自己找到解决方案了

$m['a'] = (array) $m;

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn