PHP:为什么只能通过引用传递变量?

2024-04-04

如果您是 PHP 开发人员,您很可能看到过以下通知:

注意:在 /somefile.php 中只有变量应该通过引用传递 在线 xxx

(问题广泛处理于只有变量应该通过引用传递 https://stackoverflow.com/questions/4636166/only-variables-should-be-passed-by-reference)

投掷通知示例:

$string = "hi-dude";
echo end(explode('-', $string));

工作示例:

$string = "hi-dude";
$strings = explode('-', $string);
echo end($strings);

解释:

只有实际变量可以通过引用传递,而不是返回正确变量的函数。

但是我想不出发生此通知的充分理由。感觉没有必要,有时需要我编写很多额外的代码。 PHP 有这种奇怪的限制的原因是什么?为什么这个问题会存在呢?


end() or array_pop()将返回E_NOTICE有消息

只有变量应该通过引用传递

原因是end()需要一个引用,因为它使当前元素指针指向最后一个元素。

只需一行就可以完成,

$string = "this-is-a-sample-text";
echo substr(strrchr($string, '-'), 1);

DEMO: https://3v4l.org/jO29n https://3v4l.org/jO29n

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP:为什么只能通过引用传递变量? 的相关文章

随机推荐