Добавление массива
С помощью функции merge неподходит т.к. заменяет ключи при совпадении.
а при операции добавления пишет, что такая операция не возможна
$arr3=$arr1+$arr2;
А вообще мне нужно, при совпадении ключей массив обработать соответствующим образом, Например
$arr1=array("yo"=>1,"ups"=>1);
$arr2=array("hello"=>1,"ups"=2);
Чтобы на выходе получилось
$arr3=array("yo"=>1,"ups"=>3,"hello"=>1);
или выдать сообщение, что "ups" уже есть
Цитата:
Originally posted by cic
Как можно добавить массив?
С помощью функции merge неподходит т.к. заменяет ключи при совпадении.
а при операции добавления пишет, что такая операция не возможна
$arr3=$arr1+$arr2;
А вообще мне нужно, при совпадении ключей массив обработать соответствующим образом, Например
$arr1=array("yo"=>1,"ups"=>1);
$arr2=array("hello"=>1,"ups"=2);
Чтобы на выходе получилось
$arr3=array("yo"=>1,"ups"=>3,"hello"=>1);
или выдать сообщение, что "ups" уже есть
Как можно добавить массив?
С помощью функции merge неподходит т.к. заменяет ключи при совпадении.
а при операции добавления пишет, что такая операция не возможна
$arr3=$arr1+$arr2;
А вообще мне нужно, при совпадении ключей массив обработать соответствующим образом, Например
$arr1=array("yo"=>1,"ups"=>1);
$arr2=array("hello"=>1,"ups"=2);
Чтобы на выходе получилось
$arr3=array("yo"=>1,"ups"=>3,"hello"=>1);
или выдать сообщение, что "ups" уже есть
Фу-ции такой я не наел, зато вот какой путь решения придумал:
array-keys - делаешь эту операция над обоими масивами, и заганяешь в третий массив, все ключи 2х массивов.
затем array-unique удаляем все совпадающие ключи.
а затем проверяешь array_key_exists наличие ключей этого массива, в каждом из массивов и делаешь 4 нужный тебе массив.
Конешно коряво но зато никаких циклов..
А сколько у тебя примерно записей в каждом массиве.. ?
Только тут удаляються пустые строки...
foreach($arr1 as $arr1_key=>$arr1_value)
{
if(!isset($arr3)){$arr3=array();} //наш массив (корзина) если еще не создан
if($arr1_value!="") //если текущая строка не пустая
{
$arr2=array($arr1_key=>$arr1_value); //закидуем в в дополнителный массив
$arr3=$arr3+$arr2; //дополняем наш массив текущей строкой
}
}
Для чего это мне нужно было?
Есть таблица. Из нее выбираеться понравившийся товар и закидуеться массив. И регистрируеться в виде переменной сессии. После чего уже закидуеться в базу. А может быть это как то по другому все делаеться :-?