Я получил эту функцию из вопроса здесь . когда я пробую отдельный файл, он работает нормально. но когда я переписываю его в классе, который содержит больше функций, я могу, скорее, вызвать его в другом файле, searchRe c, содержащийся в этой функции (вызывая саму функцию), становится красным или помечается как ошибка в коде Visual Studio. тогда как раньше, над этой функцией, я также написал ту же функцию, в которой есть сам вызов функции, и он работает нормально.
public function searchRec($haystack, $needle, $pathId=Array(), $pathIndex=Array())
{
foreach($haystack as $index => $item) {
$pathId[] = $item['Id'];
$pathIndex[] = $index;
if($item['Title'] == $needle) {
$returnObject = new stdClass();
$returnObject->match = $item;
$returnObject->pathId = $pathId;
item directly
$returnObject->pathIndex = $pathIndex;
return $returnObject;
}
if(isset($item['Children']) && count($item['Children']>0)) {
(recursively)
$result = searchRec($item['Children'], $needle, $pathId, $pathIndex); //searchRec error, VCS say: undifined function
if($result) {
return $result;
}
}
}
return false;
}