Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   [решено] Cannot redeclare filt_video() в РНР (http://forum.oszone.net/showthread.php?t=262710)

xNiSSaNx 18-06-2013 15:35 2169969

Cannot redeclare filt_video() в РНР
 
Есть класс wall, в нем метод _list() и _list_add()

Организовато примерно так

PHP код:

class wall{

public function _list(){

while(
true){//// в цикле выводится список
wall::_list_add();  //// к каждому элементу списка прикрепляется дополнение, тоесть выводит все элементы массива которые больше 5
}

}

public function _list_add(){
  
 function 
filt_video($var)

return 
$var>5;
}

$arr=array_filter($massiv'filt_video');/// фильтрует массив
print_r($arr);
}



И так получается, что функция callback(для фильтра) находится в методе, который проганяется в массиве и функция объявляется заново, но в итоге Фатал Еррор.

Как можно использовать callback за методом? Или подскажите другие методы решения проблемы..

О, так и сразунашел ответ)))

Перенес
PHP код:

function filt_video($var
{  
return 
$var>5


за метод, и сделал его статическим, а при ывзове его в array_filter сделал вот так

PHP код:

$arr=array_filter($massiv'wall::filt_video'); 



Время: 21:04.

Время: 21:04.
© OSzone.net 2001-