Ich habe kürzlich über Fehlerbehandlung in PHP gelernt und stieß auf die Funktion error_log(). Im PHP-Handbuch wird über alle Fehlerprotokolltypen gesprochen, und ich verstehe sie alle, mit Ausnahme von Typ 3, der besagt, dass die Fehlermeldung direkt an den SAPI-Protokollierungshandler gesendet wird. Meine Frage ist was genau ist SAPI und wann möchten Sie es verwenden?Was ist SAPI und wann würden Sie es verwenden?
Antwort
SAPI steht für "Server API". Es ist der Mechanismus, der die Interaktion zwischen der "Außenwelt" und der PHP/Zend-Engine steuert. Also, du würdest es immer benutzen wollen. In der Tat können Sie nicht vermeiden, es ohne großen Aufwand zu verwenden, da sogar CLI als SAPI betrachtet wird.
Aus Wikipedia:
Mit anderen Worten: SAPI ist eigentlich ein Application Programming Interface (API) vom Web-Server bereitgestellt anderen Entwicklern zu helfen, in die Web-Server-Funktionen erweitern.
Als Beispiel hat PHP eine direkte Modulschnittstelle namens SAPI für verschiedene Webserver; im Fall von PHP 5 und Apache 2.0 unter Windows wird es in Form einer DLL-Datei namens php5apache2.dll bereitgestellt, die ein Modul ist, das unter anderem eine Schnittstelle zwischen PHP und dem Webserver bereitstellt, die in einer Form implementiert ist der Server versteht. Dieses Formular wird als SAPI bezeichnet.
Es gibt verschiedene Arten von SAPIs für verschiedene Webservererweiterungen. Zum Beispiel sind zwei weitere SAPIs für die Sprache PHP Common Gateway Interface (CGI) und Befehlszeilenschnittstelle (CLI).
SAPI (Server Application Programming Interface) auch bekannt als ISAPI (Internet Server Application Programming Interface) für Microsoft, NSAPI (Netscape Server Application Programming Interface) für Netscape.
API Bedeutung.
Für Webentwickler können Sie sich API wie REST, SOAP vorstellen. Sie rufen einen Link auf, Sie erhalten Daten vom Server. Es ermöglicht Ihnen, mit dem Webserver zu interagieren.
SAPI ist anders mit REST oder SOAP, SAPI ist API (Vertrag) für Server verwendet.
Zum Beispiel: Common Gateway Interface ist ein SAPI. Wenn ein Webserver CGI unterstützt und ein anderes ausführbares Programm es implementiert, kann der Web-Server Webseiten dynamisch integrieren und generieren.
Schauen Sie das Bild unten:
Mod_php eine Schnittstelle zu implementieren, die Apache und PHP einander verstehen.
Also was ist SAPI genau: Es ist ein Vertrag zwischen Server (jede Art von Server) und dem Programm. Befolgen Sie einfach den Vertrag und sie müssen keine weiteren Details kennen.
Kannst du mir sagen, woher dieses Bild stammt?Ich suche nach Material mit genau dieser grafischen Darstellung. – dwytrykus
Ich erinnere mich nicht genau. Nach einigem Suchen nach dem alten Ding. Ich finde eins: http://www.slideshare.net/do_aki/php-and-sapi-and-zenengine2-and. Hoffe, dass Hilfe. –
+0, Bedarf Ausarbeitung. – Pacerier
Wie finden Sie heraus, was Ihr SAPI Logger in einer laufenden Konfiguration ist, die von Ihrem Paketbetreuer zusammengestellt wurde? (damit es die Nachrichten protokolliert, die du unbedingt sehen möchtest :)) – n611x007