Инициализация массива в PHP

157
22 октября 2018, 17:40

Недавно столкнулся с задачей, что нужно массив, состоящий из n элементов инициализировать нулями. Сделал примерно так:

for($j=0; $j < $n; $j++)
    $myarray[$j] = 0;

Вопрос, можно ли в PHP это сделать проще и удобнее?

Answer 1

Недавно столкнулся с задачей, что нужно массив, состоящий из n элементов инициализировать нулями. Вопрос, можно ли в PHP это сделать проще и удобнее?

Воспользуйтесь функцией array_fill

// Аргументы: индекс начала, сколько элементов, значение
$ar = array_fill(0,10,0);
print_r($ar);

Результат:

Array
(
    [0] => 0
    [1] => 0
    [2] => 0
    [3] => 0
    [4] => 0
    [5] => 0
    [6] => 0
    [7] => 0
    [8] => 0
    [9] => 0
)
  • array_fill - Создаёт массив и заполняет его значениями.
Answer 2
$array = array_map(function ($b) {
    return 0;
}, $array);
print_r($array);
READ ALSO
Не выводит все записи из ACF Wordpress

Не выводит все записи из ACF Wordpress

На странице нужно сделать добавление карточек, сделал через ACF путем регистрации нового поста:

178
Сравнение нескольких массивов

Сравнение нескольких массивов

Допустим есть 5 массивов (a1, a2, a3, a4, a5), в массивах содержатся idНеобходимо сравнить между собой массивы и записать в новый массив все id встречающиеся...

169
Редактирование большого файла

Редактирование большого файла

Есть много файлов, в каждом ровно 200 строк, необходимо в каждом из них приписать в начале значение, цифра на конце которого будет меняться...

192
Как убрать обратный слэш?

Как убрать обратный слэш?

В результате выборки из базы получается стока [\"0708

321