Делаю проект на laravel. Идеология такая, что даже предупреждений быть не должно.
Столкнулся вот с чем, надо перебрать массив и записать в отдельный сумму элементов.
Массив для перебора:
array(
[0]=>
object(stdClass)#631 (7) {
["value"]=> 153,
["name"]=> "elem1"
}
[1]=>
object(stdClass)#632 (7) {
["value"]=> 1700,
["name"]=> "elem2"
}
[2]=>
object(stdClass)#633 (7) {
["value"]=> 100,
["name"]=> "elem1"
}
)
Пишу такой код:
foreach($results as $res){
$naw_arr[$res->name] += $res->value;
}
Получаю:
Undefined index: elem1
Делать проверки внутри цикла, мне кажется, слишком затрудняющий понимание способ, особенно если учесть масштаб проекта.
Есть способ проще?
Или вообще отключить вывод ошибок и всё будет работать в таком виде?
foreach($results as $res){
$naw_arr[$res->name] += $res->value;
}
Когда первый раз происходит итерация, то получается сложение с еще не существующим элементом, отсюда и ошибка.
Как один из вариантов, достаточно сделать так:
$naw_arr = array();
foreach($results as $res){
if (!isset($naw_arr[$res->name])) $naw_arr[$res->name] = 0;
$naw_arr[$res->name] += $res->value;
}
P.S. Вывод ошибок в любом случае на продакшине должен быть отключен, в режиме разработки их надо видеть если они есть и исправлять.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Есть выпадающее меню на сайте сделаное на PHPПосле выбора авто в Title оно не добавляется, а остается как и есть "Марка"
ЗдравствуйтеПишу бота для сообщества на php, используя callback api
Пытаюсь разобраться с oauthЧто сделано: - установлен Passport и auth - запущены миграции и т