无法在 mysqli 中使用方法链



代码看起来很简单

$q = "SELECT COUNT(*) as 'total' FROM table";

// does not work
$total = $conn->query($q)->fetch_assoc()['total']; 

// works
$res1 = $conn->query($qcount_no_admin);
$row1 = $res1->fetch_assoc();
$total = $row1['total'];

我收到 500 错误(暂时我无法显示错误,必须与主机交谈(。

这种方法链在php mysqli中可能吗?

该语法早在 PHP 5.4 中应该可以正常工作。

早期版本中缺少的部分不是链接本身,只是取消引用函数/方法返回的数组的能力。这称为函数数组取消引用,并允许您执行以下操作:

function foo() { return ['Hello']; }
echo foo()[0]; // Hello

对于早期版本,您只需要分配给一个临时变量:

function foo() { return ['Hello']; }
$result = foo();
echo $result[0]; // Hello

最新更新