Я получил эту функцию из вопроса здесь. когда я пытаюсь использовать отдельный файл, он работает нормально. но когда я переписываю его в классе, который содержит больше функций, которые я могу вызвать в другом файле, searchRec, содержащийся в этой функции (вызывающей саму функцию), становится красным или помечается кодом 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 says: undefined function
if ($result) {
return $result;
}
}
}
return false;
}
Подробнее здесь: https://stackoverflow.com/questions/597 ... d-function