首页 > 开发 > MySQL > 正文

PHP 关于while循环

2017-09-08 08:51:03  来源:网友分享
<?phpheader ( 'Content-type: text/html; charset=utf-8' );$link = @mysqli_connect ( 'localhost', 'root', '123', '' );mysqli_select_db($link, 'd1');$query='select * from t1';$result=mysqli_query($link, $query);while($data=mysqli_fetch_row($result)){    var_dump($data);}mysqli_close($link);?>

在这个while循环中,我这样写:

$data=mysqli_fetch_row($result);while($data){    ...}

为什么浏览器崩溃?
请各位老师指教,多谢!

解决方案

主要是当把一个函数通过等号赋值给一个变量时,这个变量并不等于此函数,而是等于此函数的返回值(匿名函数除外),所以$data并不等于mysqli_fetch_row而是为它的返回值,也就是第一条的数据,如果此时第一条不为空,则while条件为真,一直循环。