PHP fatal error : Call-time pass-by-reference has been removed

标签 php deprecated fatal-error

我有一个旧的脚本,最近我得到这个错误:

Fatal error: Call-time pass-by-reference has been removed in /****/******/public_html/****/cp-list-summary.php on line 100

在该文件的第 100 行附近看起来像这样:

if ($row[images])
{
    $image_set = array ();
    $result = mysql_query ('SELECT fname FROM ' . $dbimgs . ' WHERE listid=\'' . $_GET['id'] . '\' ORDER BY id ASC', $link);
    while ($images = mysql_fetch_array ($result))
    {
        array_push (&$image_set, $images[fname]);
    }
}

错误的原因是什么以及如何解决?我不是开发人员,所以请慢慢来。

最佳答案

看起来您的站点 php 已经升级或者您正在重用 < php 5.3

的代码

只需删除 (&$image

上的 &

注意:函数调用没有引用符号——只有函数定义。仅函数定义就足以通过引用正确传递参数。从 PHP 5.3.0 开始,当您在 foo(&$a); 中使用 & 时,您将收到一条警告,指出“调用时按引用传递”已弃用。从 PHP 5.4.0 开始,调用时引用传递被移除,因此使用它会引发 fatal error 。

不应通过引用传递其他表达式,因为结果未定义。

关于PHP fatal error : Call-time pass-by-reference has been removed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19804573/

相关文章:

php - fatal error : Call to a member function getObject() on a non-object

php - 使用数组键创建新数组

php - 与名称中包含撇号的名称匹配

php - 用于登录和注册的 Laravel Auth 外部数据

java - 使用 Java EE API 替换已弃用的 JPMS 模块

php - php中允许的内存大小为33554432字节耗尽(尝试分配93字节)错误

PHP 用户类(登录/注销/注册)

android - 在哪里可以阅读有关 Android 新 API 和弃用 API 列表的信息

html - XFBML 是否被弃用?

php - 使用 register_shutdown_function() 处理 PHP 中的 fatal error