In PHP sind integrierte Funktionen vordefinierte Funktionen, die Benutzer direkt ohne Schreiben verwenden können. Benutzerdefinierte Funktionen sind Funktionen, die von Benutzern entsprechend ihren Anforderungen verfasst wurden. Wenn Sie alle integrierten und benutzerdefinierten Funktionen in PHP auflisten möchten, können Sie die von PHP bereitgestellte Funktion get_defined_functions verwenden. Diese Funktion kann nicht nur alle definierten Funktionen in der aktuellen PHP-Umgebung auflisten, sondern diese Funktionen auch in zwei Kategorien einteilen: integrierte Funktionen und benutzerdefinierte Funktionen.
get_defined_functions ist eine PHP-integrierte Funktion, die ein Array zurückgibt, das alle definierten Funktionen enthält. Dieses Array hat zwei Schlüssel:
Intern : Ein Array, das alle integrierten Funktionen enthält.
Benutzer : Ein Array, das alle benutzerdefinierten Funktionen enthält.
Diese Funktion hat keine Parameter und gibt beim Aufrufen ein mehrdimensionales Array zurück, damit Entwickler die Definition aller Funktionen anzeigen können.
Sie können Get_Defined_functions direkt verwenden, um eine Liste aller Funktionen zu erhalten. Hier ist ein Beispielcode, der zeigt, wie integrierte und benutzerdefinierte Funktionen aufgeführt sind.
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Passen Sie eine einfache Funktion an</span></span><span>
</span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">my_custom_function</span></span><span>(</span><span><span class="hljs-params"></span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-string">"Hello, World!"</span></span><span>;
}
</span><span><span class="hljs-comment">// Holen Sie sich alle definierten Funktionen</span></span><span>
</span><span><span class="hljs-variable">$defined_functions</span></span><span> = </span><span><span class="hljs-title function_ invoke__">get_defined_functions</span></span><span>();
</span><span><span class="hljs-comment">// Listen Sie integrierte Funktionen auf</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Integrierte Funktionen:\n"</span></span><span>;
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$defined_functions</span></span><span>[</span><span><span class="hljs-string">'internal'</span></span><span>]);
</span><span><span class="hljs-comment">// Listen Sie benutzerdefinierte Funktionen auf</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"\nBenutzerdefinierte Funktionen:\n"</span></span><span>;
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$defined_functions</span></span><span>[</span><span><span class="hljs-string">'user'</span></span><span>]);
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
In diesem Beispiel passen wir zunächst eine einfache Funktion my_custom_function an und rufen dann get_defined_functions auf, um alle Funktionen in der aktuellen Umgebung zu erhalten. Durch das Drucken des Arrays können wir den Unterschied zwischen integrierten und benutzerdefinierten Funktionen deutlich erkennen.
Wenn Sie den obigen Code ausführen, sind die Ausgabergebnisse ungefähr wie folgt:
<span><span>Integrierte Funktionen:
Array
(
[</span><span><span class="hljs-meta">0</span></span><span>] => abs
[</span><span><span class="hljs-meta">1</span></span><span>] => acos
[</span><span><span class="hljs-meta">2</span></span><span>] => acosh
...
)
Benutzerdefinierte Funktionen:
Array
(
[</span><span><span class="hljs-meta">0</span></span><span>] => my_custom_function
)
</span></span>
Wie oben gezeigt, listet Get_Defined_functions alle integrierten Funktionen im internen Array auf, und unsere benutzerdefinierte Funktion my_custom_function ist im Benutzerarray aufgeführt.
get_defined_functions listet nur die im aktuellen Skript definierten Funktionen auf, einschließlich Funktionen im aktuellen Bereich. Für Funktionen, die aus externen Dateien eingeführt wurden (z. B. Funktionen in Dateien, die über include oder Forderung eingeführt wurden), werden die Funktionen auch aufgeführt, wenn diese Dateien geladen wurden, bevor das aktuelle Skript ausgeführt wird.
Wenn Sie viele benutzerdefinierte Funktionen haben, kann Get_Defined_functions sehr nützlich sein, insbesondere bei Szenarien für Debugging und Dokumentgenerierung.
get_defined_functions ist eine sehr praktische Funktion, mit der Entwickler alle definierten Funktionen in einer PHP -Umgebung schnell auflisten können. Dadurch können wir leicht zwischen integrierten und benutzerdefinierten Funktionen unterscheiden und dazu beitragen, PHP-Code besser zu verwalten und zu debuggen.