PHP: как узнать вызывающую функцию?

как узнать вызывающую функцию в php?

Не знаете, почему это вам когда-нибудь понадобилось, но вы можете понять это из функции debug_backtrace() .

Я не уверен, зачем вам это нужно, но позвольте мне поднять огромный красный флаг – писать код, поведение которого зависит от вызывающего, генерирует очень не модульные, трудно отлаживаемые и совершенно безумные программы. Тем не менее, если у вас есть веская причина, что-то вроде …

 function caller() { $stackTrace = debug_backtrace(); if (count ($stackTrace) < 1) return "None"; else if (count ($stackTrace) < 2) return "Global scope " . $stackTrace[count($stackTrace)]["file"]; else return $stackTrace[count($stackTrace) - 1]["function"]; } 

(Это было списано с манжетой, поэтому не может быть устойчивым во всех ситуациях. См. http://uk3.php.net/manual/en/function.debug-backtrace.php для получения дополнительной информации)

как узнать вызывающую функцию в php?

Передайте его в вызываемый. Это самый разумный подход.