如何测试循环引用的变量?
我正在使用 PHP 的var_export()
函数,并将返回字符串参数设置为true
.
我发现了这一点Warning: var_export does not handle circular references
,并想知道是否有人知道一种方法来测试变量是否包含循环引用,以便我可以在尝试使用它之前使用var_export
它。
我知道var_export
输出可用于重新创建数组的 PHP eval-able 文本,即使我没有使用它,我仍然想在可用时使用此函数,因为输出格式满足我的需要。var_dump
不是一个选项,因为它不接受返回字符串的参数。我知道我可以缓冲var_dump
处理循环引用的输出并将缓冲区内容保存到变量中,但我真的只想知道是否有人知道在变量中测试此类引用的方法。
如果要创建快速循环引用,请执行以下操作:
$r = array();
$r[] = &$r;
var_export($r, true);