Иногда встрачаю такие записи:
$arr = array(); // зачем писать эту строку?
$arr = [1,2,3];
print_r($arr);
Ещё где-то краем уха слышал, что от этой первой строчки, как-то снижается нагрузка на проц. Поправьте, если я слышал звон.
В вашем примере первая строчка - лишняя и она не дает никакого снижения нагрузки на проц. Наверное, вы видели немного другой вариант использования инициализации массивов:
$arr = [];
$arr[1] = 'one';
print_r($arr);
В таком случае инициализировать массив необходимо ($arr = [] или $arr = array()), так как если переменная $arr была использована где-то еще ранее в коде ($arr['product_id'] = 321), то в ней могут остаться данные, что может стать сюрпризом при выборке этих данных.
зачем писать эту строку?
В конкретно вашем примере - это делать не нужно. Инициализация "пустой" переменной с определением какого-то типа (string, array, integer) нужно в тех случаях, когда ниже по коду эта переменная будет принимать участие в каких-либо операциях. Например, если вы будете добавлять очередное значение в массив, то этот массив, пусть и пустой, уже должен существовать. Если будем говорить о строках, то тут может идти речь о конкатенации и чтобы "склеить" значения в переменной, в ней уже должна быть хоть какая-то строка. То же самое и числовыми типами и, например, возможных математических операциях.
$arr = [];
// где-то ниже
$arr[] = 'new value';
$str = '';
// где-то ниже
$str .= 'new value';
$int = 0;
// где-то ниже
$int++;
Что касается $arr = []
и $arr = array()
, то принципиальной разницы нет. Первый вариант введен, как короткий синтаксис в PHP5.4
Для читабельности. В PHP нет способа объявить массив, поэтому иногда так и пишут. Но ваш пример очень прост. Обычно присвоение непустого массива происходит где-то чуть ниже в коде.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Заранее прошу прощение, если вопрос поставлен неправильно: программирование - не моя основная специализация
Использую php 7 версию и Opencart 2Но на сайте выводятся ошибки типа: "Устаревшая функция"
Подключил шаблон AdminLTE для админской части сайта, там есть страница отображения почтыКак на эту страницу передавать сообщения приходящие...