Volgens mij worden alle losse php bestanden op het moment dat het script wordt uitgevoerd door de php interpreter onder elkaar gezet en is er geen sprake meer van losse bestanden. Maar ik kan het fout hebben, en stel daarom voor de zekerheid de volgende vraag:
Is het mogelijk om, zonder een extra parameter mee te geven, te zien vanuit welk php bestand een functie wordt aangeroepen?
Een voorbeeld:
Als ik het script "dit.php" run, zou de output 'functie aangeroepen vanaf dit.php!' moeten zijn. In het andere geval (dat.php) zou de output 'functie aangeroepen vanaf dat.php!' moeten zijn.
Nogmaals, ik weet dat je eenvoudig een extra parameter in de functie foo() zou kunnen stoppen om de pagina waarvan geroepen wordt te bepalen, maar ik vraag me af of het ook automatisch kan. Ik kon via Google niets vinden, maar misschien heeft iemand hier al eens over hetzelfde nagedacht?
Is het mogelijk om, zonder een extra parameter mee te geven, te zien vanuit welk php bestand een functie wordt aangeroepen?
Een voorbeeld:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| // common.inc function foo() { if ($calling_page == 'dit.php') { return 'functie aangeroepen vanaf dit.php!'; } else if ($calling_page == 'dat.php') { return 'functie aangeroepen vanaf dat.php!'; } } // dit.php include_once('common.inc'); echo foo(); // dat.php include_once('common.inc'); echo foo(); |
Als ik het script "dit.php" run, zou de output 'functie aangeroepen vanaf dit.php!' moeten zijn. In het andere geval (dat.php) zou de output 'functie aangeroepen vanaf dat.php!' moeten zijn.
Nogmaals, ik weet dat je eenvoudig een extra parameter in de functie foo() zou kunnen stoppen om de pagina waarvan geroepen wordt te bepalen, maar ik vraag me af of het ook automatisch kan. Ik kon via Google niets vinden, maar misschien heeft iemand hier al eens over hetzelfde nagedacht?
"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."