什么是 SAPI,何时使用它?
我最近一直在学习PHP中的错误处理,并遇到了error_log()
函数。
在PHP手册中,它讨论了所有错误日志类型,我理解所有错误日志类型,除了类型3,它指出错误消息直接发送到SAPI日志记录处理程序。我的问题是SAPI到底是什么,你什么时候想使用它?
我最近一直在学习PHP中的错误处理,并遇到了error_log()
函数。
在PHP手册中,它讨论了所有错误日志类型,我理解所有错误日志类型,除了类型3,它指出错误消息直接发送到SAPI日志记录处理程序。我的问题是SAPI到底是什么,你什么时候想使用它?
SAPI 代表 “Server API”(API 代表 “Application Programming Interface”)。它是控制“外部世界”和PHP / Zend引擎之间交互的机制。因此,您总是想使用它。实际上,如果不付出很多努力,您就无法避免使用它,因为即使CLI也被视为SAPI。
SAPI(服务器应用程序编程接口)也被称为ISAPI(Internet Server Application Programming Interface)用于Microsoft,NSAPI(Netscape Server Application Programming Interface)用于Netscape。
API 含义。
对于Web开发人员,你可以想到诸如REST,SOAP之类的API。您调用一个链接,从服务器获取数据。它允许您与Web服务器进行交互。
SAPI与REST或SOAP不同,SAPI是用于服务器的API(合约)。
例如:通用网关接口是一个 SAPI。如果Web服务器支持CGI并且另一个可执行程序实现它,那么Web服务器就可以动态地集成和生成网页。
请看下图:
mod_php实现一个apache和php可以相互理解的接口。
那么SAPI到底是什么:它是服务器(任何类型的服务器)和程序之间的契约。只需遵守合同,他们不需要知道其他方面的细节。