php: повторять набор записей - проще? - PullRequest
0 голосов
/ 08 апреля 2011

Я только что перешел с ASP на php, и я немного озадачен тем, как php обрабатывает наборы записей. Я хотел бы знать, есть ли более простой способ перебора набора записей путем создания класса php. вот синтаксис ASP, чтобы показать, что я имею в виду:

sq = "select * from myData"
set rs = db.execute(sq)
do while not rs.eof
    response.write rs("name")  // output data (response.write = echo)
    rs.movenext
loop

есть идеи? спасибо

Ответы [ 2 ]

2 голосов
/ 08 апреля 2011

Ты бы сделал то же самое ...

$sql = "select * from myData";
$result = mysql_query($sql) or die(mysql_error()); //executes query
while($row = mysql_fetch_array($result)){ //will automatically return false when out of records
    echo $row['name'];
}
1 голос
/ 08 апреля 2011

Вы, вероятно, ищете функцию, содержащую слово fetch в своем названии. Например. mysql_fetch_assoc() или $pdo->fetchAll().

Большинство функций API базы данных в PHP возвращает какую-то переменную-указатель, называемую «ресурс», которую можно передать функции семейства fetch, например:

$res = mysql_query();
while($row = mysql_fetch_assoc($res)){
  echo $row['name'];
}

Однако некоторые из них (например, метод PDO fetchAll ) возвращают, но обычный PHP-массив, который можно повторять, используя обычный оператор foreach.

...