За последние 24 часа нас посетили 37172 программиста и 7909 роботов. Сейчас ищут 1765 программистов ...

Fetch assoc

Тема в разделе "PHP для новичков", создана пользователем Fidgin, 10 янв 2023.

  1. Fidgin

    Fidgin Гость

    С нами с:
    10 янв 2023
    Сообщения:
    1
    Симпатии:
    0
    Добрый день.
    Подскажите, как будет правильно и в чем разница $row = $result->fetch_assoc(); и $row = mysqli_fetch_assoc($result);
    Работает и так и так, но не понятно в чем именно различия. Спасибо

    PHP:
    1. $stmt = $mysqli->prepare("SELECT id, name, city FROM `users` WHERE `login` = ? LIMIT 1");
    2. $stmt->bind_param("s", $login);
    3. $stmt->execute();
    4. $result = $stmt->get_result();
    5. $row = $result->fetch_assoc();
    6. //или
    7. $row = mysqli_fetch_assoc($result);
     
  2. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.497
    Симпатии:
    1.726
    Разницы нету. Просто сделали два варианта - с ООП и без. Там на самом деле что-то типа
    PHP:
    1. function mysqli_fetch_assoc(mysqli_result $result) {
    2.    return $result->fetch_assoc();
    3. }
     
  3. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.497
    Симпатии:
    1.726
    Видимо для тех, кто ООП не знает/не понимает, а в БД залезть не терпится. Или чтоб было в своё время легче переходить с устаревшего расширения mysql, в котором ООП не использовалось
     
  4. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.840
    Симпатии:
    1.338
    Адрес:
    Лень
    Можно еще генератором https://www.php.net/manual/ru/function.iterator-to-array.php без fetch