Этот сайт не наркоманов. Это сайт программистов.

Добро пожаловать на Пыху!

Логин:
Пароль:
 

Нет прописки? Зарегистрируйся!

Новости

Мы в твиттере!
Мы вконтакте!
Мы на яндексе!

Краснодарское время: 25 Май, 2012, 05:03:08

Страниц: [1]
Печать
Автор Тема: array_intersect  (Прочитано 297 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
truth4oll    ↓ 
21 Октябрь, 2010, 03:25:00
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 15
Сообщений: 471
Сила слова: 3.18

использую я значит функцию intersect для вычисления айдишников которые присутсвуют во всех перечисленных массивах,
PHP
$aIds = array_intersect($ids_kuzov,$ids_v,$ids_power,$ids_places);
но вдруг, если один из параметров не учитывается, то он становится пустым, и следовательно делает $aIds пустым.
Что надо сделать чтобы всё было круто?)
 
Спустя 1 минуту 52 секунды добавил
пока сделал приравнивание пустых переменных массиву, который точно содержит айдишники, но это как то не круто
Записан

План прост - потому красив
master    ↓ 
21 Октябрь, 2010, 05:53:26 , спустя 2 часа 28 минут 26 секунд
НЕ ХУЕТА! ХУЕТА!

Квадратов сколько видишь ты?
Группа: Джедаи

Карма: 44
Сообщений: 2080
Сила слова: 2.12

что ты хочешь? нормально скажи без всяких своих "чтобы всё было круто"
примеры исходных массивов приведи для случаев когда всё правильно или что-то неправильно
Записан

truth4oll    ↓ 
21 Октябрь, 2010, 05:58:36 , спустя 5 минут 10 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 15
Сообщений: 471
Сила слова: 3.18

PHP
$ids_kuzov = array (1,2,4,5);
$ids_v = array(2,4,8);
$ids_power = array (1,2,9);
$ids_places = array (2,12);

в массиве $aIds у нас будет только один айдишник $aIds  = array(2);
 
если же переменной $ids_places не будет вообще, то  $aIds будет пустым, а надо чтобы просто её не учитывал
Записан

План прост - потому красив
Dash    ↓ 
21 Октябрь, 2010, 06:26:08 , спустя 27 минут 32 секунды
НЕ ХУЕТА! ХУЕТА!

Карма: 0
Сообщений: 9
Сила слова: 0

как то так (не тестил, но суть думаю  ясна)
PHP

function groupIntersect($data) {
    if (count($data) == 0)
        return;
    $retArray = array();
    for ($x = 0; $x < count($data); $x++) {
        if (count ($data[$x]) == 0 )
            continue;
       
        $nextNode = $data[($x+1)];
        if (is_null($nextNode))
            break;
 
        $retArray = array_intersect($data[$x], $nextNode);
    }
    return $retArray;
}
 
//Вызов
groupIntersect(array($ids_kuzov,$ids_v,$ids_power,$ids_places));
 
Записан
Dash    ↓ 
21 Октябрь, 2010, 06:31:52 , спустя 5 минут 44 секунды
НЕ ХУЕТА! ХУЕТА!

Карма: 0
Сообщений: 9
Сила слова: 0

бля нихуа, там сравнивать надо с retArray'ем.. тупанул
 
в форе в надо вставить после continue
PHP

if (count($retArray) == 0)
    $retArray = $data[$x];
 
Записан
phpdude    ↓ 
21 Октябрь, 2010, 06:35:42 , спустя 3 минуты 50 секунд
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 344
Сообщений: д-о-х-у-я!
Сила слова: 1.65

ламера
 
PHP

<?
$required = call_user_func_array("array_intersect", array_filter(array($ids_kuzov,$ids_v,$ids_power,$ids_places)));
 

Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
truth4oll    ↓ 
22 Октябрь, 2010, 12:01:24 , спустя 5 часов 25 минут 42 секунды
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 15
Сообщений: 471
Сила слова: 3.18

Во, спасиб Дуд, то что надо)
If no callback is supplied, all entries of input equal to FALSE (see converting to boolean) will be removed.
Записан

План прост - потому красив
phpdude    ↓ 
22 Октябрь, 2010, 12:06:18 , спустя 4 минуты 54 секунды
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 344
Сообщений: д-о-х-у-я!
Сила слова: 1.65

truth4oll, да я всегда говорю только по делу ебана1
Спустя 4 секунды добавил
оололОЛ!О!!!
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
phpdude    ↓ 
22 Октябрь, 2010, 12:26:29 , спустя 20 минут 11 секунд
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 344
Сообщений: 20790
Сила слова: 1.65

truth4oll, спасибо за минус :-D
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
truth4oll    ↓ 
22 Октябрь, 2010, 12:31:06 , спустя 4 минуты 37 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 15
Сообщений: 471
Сила слова: 3.18

phpdude, ну епт) я подумал что для тебя минус намного круче, чем этот обыденный плюс :D которых у тебя уже куча))
Записан

План прост - потому красив
phpdude    ↓ 
22 Октябрь, 2010, 12:33:31 , спустя 2 минуты 25 секунд
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 344
Сообщений: д-о-х-у-я!
Сила слова: 1.65

truth4oll, ухахах, ну да, ты прав)
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
CTAPbIu_MABP    ↓ 
22 Октябрь, 2010, 06:53:33 , спустя 18 часов 20 минут 2 секунды
НЕ ХУЕТА! ХУЕТА!

мавр
Группа: в ухо

Карма: не нужна
Сообщений: 5187
Сила слова: 1.81

дуд спит со списком функций под подушкой поэтому такой умный...
а у меня код жуквери распечатан и лежит там же)))
Записан

java.lang.OutOfMemoryError
phpdude    ↓ 
22 Октябрь, 2010, 07:21:35 , спустя 28 минут 2 секунды
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 344
Сообщений: д-о-х-у-я!
Сила слова: 1.65

CTAPbIu_MABP, лол))
 
да я просто запоминаю надолго функции которыми пользуюсь) а эти уже из разряда "обычно" стали
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
CTAPbIu_MABP    ↓ 
22 Октябрь, 2010, 08:45:44 , спустя 1 час 24 минуты 9 секунд
НЕ ХУЕТА! ХУЕТА!

мавр
Группа: в ухо

Карма: не нужна
Сообщений: 5187
Сила слова: 1.81

в яваскрипте вообще прямой вызов функций считаю... хз... неудобным
я на постой подменяю какие-то параметры и контекст  
Спустя 11 секунд добавил
http://mabp.kiev.ua/tag/aop/
Записан

java.lang.OutOfMemoryError
Страниц: [1]
Печать
 

Перейти в:  

Этот топик скрыли: adw0rd