4

私はphpでのコーディングにzendstudioを使用しています。

次のコードzend studioの行に警告が表示されますが、正常に動作し、テーブルがすぐに表示されます。 while...assignment in condition

$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 studioが、20 to 30 seconds結果の下に長い空白と長い空白が表示されます。なんで?

$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 />';
} 
4

1 に答える 1

5

マニュアルによると:

mysqli_fetch_row()は、フェッチされた行に対応する文字列の配列を返します。結果セットに行がない場合はNULLを返します。

BOOL応答をチェックしているので、スクリプトは続行されます。!= FALSEまたは!==NULLのいずれかを使用します。

コードは次のいずれかになります。

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

また

while (($row = mysqli_fetch_row($result)) !== NULL) {
于 2012-12-26T17:17:42.020 に答える