编程语言
首页 > 编程语言> > php – 要解决“在条件中分配”使用!== false减慢脚本速度.为什么?

php – 要解决“在条件中分配”使用!== false减慢脚本速度.为什么?

作者:互联网

我正在使用zend studio在php中编码.

在zend studio中,以下代码中的while行显示了条件警告中的赋值,但它工作正常并立即向我显示表格.

$oDB = new db;
print '<strong>Twitter Database Tables</strong><br />';
$result = $oDB->select('SHOW TABLES');
while ($row = mysqli_fetch_row($result)) {
    print $row[0] . '<br />';
} 

但是当我使用以下代码解决此警告时,它不会在zend工作室中显示警告,但它会在很长一段时间后显示约20至30秒的表格,并在结果中显示长的空白区域.为什么?

$oDB = new db;
print '<strong>Twitter Database Tables</strong><br />';
$result = $oDB->select('SHOW TABLES');
while (( $row = mysqli_fetch_row($result)) !==FALSE) {
    print $row[0] . '<br />';
} 

解决方法:

根据the manual

mysqli_fetch_row() returns an array of strings that corresponds to the
fetched row or NULL if there are no more rows in result set.

您正在检查BOOL响应,因此脚本继续.使用!= FALSE或!== NULL.

代码可以是:

while (($row = mysqli_fetch_row($result)) != FALSE) {

要么

while (($row = mysqli_fetch_row($result)) !== NULL) {

标签:php,mysql,zend-framework,zend-studio
来源: https://codeday.me/bug/20190620/1246214.html