|
|
|
|
$arr1 = array('123');
$arr2 = array('123');
if(in_array($arr1,$arr2))
{
echo '<pre>';
print_r($arr1);
print_r($arr2);
echo 'найдено';
}
else
{
echo '<pre>';
print_r($arr1);
print_r($arr2);
echo 'не найдено';
}
|
почему возвращает "не найдено"?
PHP Version 5.3.2-2 | |
|
|
|
|
|
|
|
для: Читатель
(10.02.2011 в 03:50)
| | Вы указываете в качестве значения сравнения сам массив а не его элемент которым является строка '123', для указания элемента необходимо указать его номер, т.к. они нумеруются с нуля, то:
if(in_array($arr1[0],$arr2))
результат - найдено. | |
|
|
|
|
|
|
|
для: lightning.say
(10.02.2011 в 04:38)
| | bool in_array ( mixed $needle , array $haystack [, bool $strict ] )
$needle может быть массивом в PHP версиях > 4.2.0 (с) PHP Manual | |
|
|
|
|
|
|
|
для: Читатель
(10.02.2011 в 04:58)
| | да может, тогда чтобы найти массив в массиве, тот массив в котором осуществляется поиск должен быть многомерным массивом (состоящим из других массивов), одним из которых должен быть искомый а у вас он состоит из одного текстового элемента среди которого вы ищете массив. | |
|
|
|
|
|
|
|
для: lightning.say
(10.02.2011 в 05:06)
| | Понятно. Спасибо. | |
|
|
|