aardio 文档

process.php 库模块帮助文档

process 成员列表

process.php(path,documentRoot)

查找可用端口创建 PHP/CGI 服务器,返回返回完整URL。
如果 PHP/CGI 服务器已启动则直接返回 URL 而不是重复启动服务器,
省略参数返回首页 URL,尾部不包含斜杠

可选用 @path 参数指定请求目标文件的相对路径。
└── 因 PHP 不支持内嵌资源路径,
└── 放 *.php 文件的工程目录「内嵌资源」属性必须为 false。

可选使用参数 @documentRoot 指定网站根目录,默认为"/"

process.php 成员列表

基于 wsock.tcp.simpleHttpServer 启动 PHP CGI 服务端,
HTTP 服务端默认自动分配空闲端口,当前线程结束时,HTTP 服务端会自动退出
当前进程退出时,即使 PHP CGI 进程仍然运行也会自动退出。

自动搜索并返回 php-cgi.exe 路径。
如果找不到 Win 7 自动安装 PHP 7.4 , Win 10 自动安装 PHP 8.3。
如果要兼容 XP 系统,请导入 process.php.5.2 以替代 process.php 即可。

查找可用端口创建 PHP/CGI 服务器,返回返回完整URL。
此服务端限制使用本机IP 127.0.0.1 访问,并随机分配端口不会出现端口冲突
如果 PHP/CGI 服务器已启动则直接返回URL而不是重复启动服务器,
注意当前线程结束时,此服务器线程会自动退出

process.php.cgiPath

可选指定 php-cgi.exe 路径,
不指定则或为 null 则调用 checkCgiPath 函数自动搜索。
搜索顺序: 请参考该函数源码。

process.php.checkCgiPath()

自动搜索并返回 php-cgi.exe 路径。
如果找不到 Win 7 自动安装 PHP 7.4 , Win 10 自动安装 PHP 8.3

process.php.code[]

可通过此对象的键值读应应用程序根目录下的文件。

process.php.customErrors

process.php.customErrors = {  
    [404] = function(response){  
        response.status = "404 Not Found";  
        response.write("404 Not Found"); /*自定义错误页*/  
    }   
}

process.php.enableJsonRpcClient(true)

PHP 自动启用 JsonRpcClient 类。
必须在调用所有其他 process.php 库函数之前调用才会有效。

如果 httpHandle["/jsonrpc"] 指定为 JSON RPC 服务端函数表。
则会自动调用此函数启用 PHP 的 JsonRpcClient 类。

process.php.httpHandle

process.php.httpHandle = {
    ["/jsonrpc"] = { 
        hello = function(name,value){ 

            /*可在此用一个表自定义 HTTP 服务端处理程序
            键为 HTTP 请求路径,值为处理程序(函数、aardio 代码、表对象)。
            如果处理程序为表对象,则自动转换为 JSON RPC 服务端函数表。 

            JSON RPC 服务端函数第一个返回值为客户端返回值(result),
            第二个可选的返回值为错误对象(error)。
            */

            if(!name) return null,-32602/*_JSONRPC_INVALID_PARAMS*/; 
            return "hello " + name;
        }
    };
    ["/path"] = function(response,request,session){
    } 
}

process.php.iniPath

可选指定php.ini路径,
不指定则在php-cgi.exe目录下查找

process.php.notify("/.php")

通知指定的 PHP 页面运行,不阻塞当前线程。
如果参数 @2 为 false ,则发送请求后关闭连接,不获取响应数据。
否则在开发环境下将响应数据输出到 stderr 错误输出。
不会自动打开控制台。

参数指定 PHP 页面路径,不支持内嵌资源路径。
放 *.php 文件的工程目录「内嵌资源」属性必须为 false。

用法请参考:范例 > 调用其他语言 > php > CGI 回显

process.php.startIp

设置服务器端IP,
默认为"127.0.0.1"

process.php.startPort

设置服务器端口,默认自动分配空闲端口

process.php.startRpc

启动 PHP 的 process.rpc 兼容服务端。
返回 process.rpc.jsonClient 对象。

process.php.startRpc()

返回对象:processRpcJsonClientObject

process.php.startRpc(code,params)

参数 @code 指定 PHP 代码或 PHP 代码文件。
返回 params 可用表对象指定模拟 GET 请求参数。
返回 process.rpc.jsonClient 对象,可用于调用 PHP 函数

process.php.threadGlobal

process.php.threadGlobal = {
    /*此表内的键值对将复制为所有处理 HTTP 请求的线程环境全局变量  
phpCgiPath,phpIniPath,httpHandle 为保留名称,请勿使用*/
}

process.php.threadNum

设置服务器线程数,默认为2个线程

Markdown 格式