提问人:Faye D. 提问时间:5/22/2022 更新时间:5/22/2022 访问量:31
通过引用传递的变量和在自身内部调用的函数
Variable passed by reference and function called within itself
问:
我有一个声明为函数的函数,在某些情况下,我必须这样称呼自己:function build(array $data, SimpleXMLElement &$xml)
$subnode = $xml->addChild($key);
build($value, $subnode);
我试图通过写它来缩短它,但我收到了通知build($value, $xml->addChild($key));
Notice: Only variables should be passed by reference in...
难道没有任何技巧可以安全地用单行替换两条线吗?
短暂性投资安全
答: 暂无答案
评论
SimpleXMLElement
首先是对象,对它们的更改无论如何都会传播给任何看到该对象的人,无论您是否通过引用......?!echo end(explode(' ', trim($item['ITEM.MTRL_CCWEBCAT']), 2));
end
的主要用途是将内部数组指针设置到末尾。为此,传递表达式的结果没有意义,因为之后任何内容都无法访问该数组,因此设置数组指针变得毫无意义。这也返回最后一个元素是副产品。这就是为什么存在这样的通知,向你指出代码可能不会按照你的想法去做。所以,不,这不是需要压制通知的问题。end