每天PHP函数-ignore_user_abort,highlight_string,highlight_file,get_browser

 RorinL     2022年01月17日 星期一 21:32:38     php   每天两个PHP函数      php   php函数    

1.ignore_user_abort(bool): int

作用:设置脚本在客户端断开后是否继续运行此脚本;

可用来实现计划任务,完成后续任务;比如用户购买商品完成后脚本继续执行数据验证(即使用户离开),发现未支付或有误信息及时反馈给用户。

<?php
ignore_user_abort(true);
set_time_limit(0);
$interval = 10;
$stop = 1;
do {
if( $stop == 10 ) break;
file_put_contents('a.php',' Current Time: '.time().' Stop: '.$stop);
$stop++;
sleep ( $interval );
} while ( true );

运行上面的脚本,客户端断开后,a.php中依然会能看到数据的不断变化

注意:该函数不适用于所有的服务器中;例如php在处理请求过程中,iis服务器会发送一条FCGI_ABORT_REQUEST给php脚本,但由于 PHP 没有回应(它仍在忙于执行请求),所以IIS 终止了请求(杀死进程);而且PHP检测一个中止的连接是因为对管道的写入失败,而不是通过收到FCGI_ABORT_REQUEST记录,这也不难解析在iis中使用会发生问题甚至无法使用.参见PHP :: Doc Bug #60586 :: ignore_user_abort=true has no effect on IIS with FastCGI

 

2.highlight_string(string $str,bool $return=false)

作用:字符串的语法高亮,输出或返回语法高亮的PHP代码

$return为false时候直接显示.高亮失败返回false

 

3.highlight_file(文件路径,bool $return=false)

作用:文件的语法高亮,输出或返回语法高亮的PHP代码

$return为false时候直接显示.高亮失败返回false

 

4.get_browser(默认使用HTTP头中User-Agent的值(null忽略该参数),bool $return_array = false)

作用:获取客户端浏览器的信息(功能)

return_array设置为true函数返回的是一个数组而不是object

[danger]函数依赖browscap.ini,在php.ini中browscap必须正确指向browscap.ini;browscap.ini并不内置PHP[/danger]


暂无评论

发表回复

您的电子邮箱地址不会被公开。

CAPTCHAis initialing...