Подтвердить что ты не робот

Array_push() против $array [] =.... Что быстрее?

Мне нужно добавить значения, полученные от MySQL, в массив [PHP], вот что я получил:

$players = array();

while ($homePlayerRow = mysql_fetch_array($homePlayerResult)) {
    $players[] = $homePlayerRow['player_id'];
}

Это единственный способ сделать это? Также, выполняется следующее быстрее/лучше?

$players = array();

while ($homePlayerRow = mysql_fetch_array($homePlayerResult)) {
    array_push($players, $homePlayerRow['player_id']);
}

Заранее спасибо

4b9b3361

Ответ 2

В зависимости...

Документация говорит,

"Если вы используете array_push(), чтобы добавить один элемент в массив, лучше использовать $array [] =, потому что таким образом нет накладных расходов на вызов функции."

Источник: http://us2.php.net/array_push

Итак, это сводится к тому, сколько данных вы хотите втиснуть в этот массив в любой конкретный момент. Кроме того, есть спад, если ссылка с массивом не существует, когда вы вызываете ее с помощью array_push, вы столкнетесь с ошибкой. Если вы используете $array [], массив будет создан для вас.