У меня есть то, что похоже на вопрос о mysql & PDO. Я поставил себе задачу о том, как начать использовать PDO вместо старых функций mysql * PHP.PHP MYSQL PDO - функция
Это немного сложно объяснить, но я сделаю сайт максимально эффективным (с точки зрения PHP в любом случае). Я нашел кучу хороших уроков о MySQL PDO, но мне не удалось найти решение этого.
Предположим, что я хочу регулярно запрашивать различные таблицы для всех данных, которые они содержат; Для этой цели я намерен создать функцию с одним аргументом - имя таблицы для запроса: Что-то вроде этого:
function getData($table)
{
global $db;
$SQL_query = "SELECT * FROM $table";
$statement = $db->query($SQL_query);
$result = $statement->fetch(PDO::FETCH_NUM);
return $result;
}
Это работает отлично; однако функция возвращает только первую «строку» таблицы. Теперь вопрос: как заставить функцию возвращать все строки? Могу ли я попробовать что-то вроде этого:
function getData($table)
{
global $db;
$SQL_query = "SELECT * FROM $table";
$statement = $db->query($SQL_query);
while ($row = $statement->fetch(PDO::FETCH_NUM)
{
return $result;
}
}
Я был бы признателен за любые советы/рекомендации и т.д. ... Если есть какие-либо рекомендации для такого рода желаемого поведения?
Да, вы можете это сделать. В качестве альтернативы вы можете использовать ['fetchAll()'] (http://php.net/manual/en/pdostatement.fetchall.php) и перебирать результирующий набор, возвращаемый этой функцией. –