Структура такая:
arr [
inner1[],
inner2[],
...
]
Прохожу циклом по массиву arr
:
foreach ($arr as $inner) {
$inner[...] = ...;
}
В общем, произвожу действия со вложенным массивом, но так понимаю, что значение $inner
в foreach
не является указателем на вложенный массив, поэтому в самом массиве изменений не производится.
Единственным вариантом вижу проход по массиву обычным циклом и обращение к каждому элементу по индексу. Это, и правда, единственный вариант?
foreach ($arr as &$inner) {
$inner[...] = ...;
}
Можно использовать array_map(callback, array) для применения функнии calback ко всем элементам массива.
function mycallback($v)
{
$v=strtoupper($v);
return $v;
}
$a=array("Animal" => "horse", "Type" => "mammal");
array_map("mycallback", $a)
вернет
Array ( [Animal] => HORSE [Type] => MAMMAL )
Тут пример использования https://www.w3schools.com/php/func_array_map.asp
Если, по каким-то критериям, нужно удалить часть массива, можно использовать array_filter(array, callback)
function test_odd($var)
{
return($var & 1);
}
$a1=array("a","b",2,3,4);
array_map($a1, "test_odd")
вернет
Array ( [3] => 3 )
https://www.w3schools.com/php/func_array_filter.asp
Собираюсь скриптом php отправлять AT команду usb модему на получение баланса по ussdС командами разобрался, ответ тоже получаю (но зашифрованный)
не получается авторизоваться в facebook с помощью CURL'а
Не могу найти подходящей функцииИли как написать самому регулярку, чтобы правильно выводило?