将mysql_fetch_array转换为PDO :: FETCH_NUM

Gor*_*tem 4 php mysql pdo

PDO中这两个代码的等价物是什么

第一:

  $row=mysql_fetch_array($query);
Run Code Online (Sandbox Code Playgroud)

第二:

 while($row=mysql_fetch_array($query)){
   $data[]=$row;
 }
Run Code Online (Sandbox Code Playgroud)

我在下面使用这些代码,但我猜它们并不完全相同,因为其余代码不起作用.

$row = $query->fetch(PDO::FETCH_NUM);
Run Code Online (Sandbox Code Playgroud)

 $data[] = $query->fetch(PDO::FETCH_ASSOC);
Run Code Online (Sandbox Code Playgroud)

Bar*_*mar 14

这是通信:

  • mysql_fetch_array= fetch(PDO::FETCH_BOTH)- 行是具有数字索引和命名索引的数组.
  • mysql_fetch_assoc= fetch(PDO::FETCH_ASSOC)- 行是具有命名索引的数组.
  • mysql_fetch_row= fetch(PDO::FETCH_NUM)- 行是具有数字索引的数组.
  • mysql_fetch_object= fetch(PDO::FETCH_OBJ)fetch(PDO::FETCH_CLASS)取决于您是否指定可选className参数mysql_fetch_object.行是对象,可以是指定的类,也可以是stdClass.

while循环相当于:

$data = $query->fetchAll(PDO::FETCH_BOTH)
Run Code Online (Sandbox Code Playgroud)