posix_ttyname - 获取当前终端设备名称。
<?php var_dump( posix_ttyname(STDOUT) );
我们启动一个终端,执行上面的代码输出:/dev/tty1
我们再启动一个终端,执行上面的代码输出: /dev/tty2
/dev/tty是指的启动的终端名称,linux中以文件来表示终端。
甚至我们可以让终端之间发送信息,执行以下命令:
echo "YinFangZhen" > /dev/tty1
执行完成后第一个终端就收到YinFangZhen的字符串,效果如下:

然后我们在php多进程编写常驻内存的应用中经常会退出主进程,让子进程转主进程,此时子进程就会继承父进程的终端文件描述符,可以通过以下代码释放
fclose(STDIN),fclose(STDOUT),fclose(STDERR)
通过该函数可以获取指定端口的页面源码,还能设置超时时间、自定义数据包,fsockopen 也很强大,但是比较偏底层。可以自定义设置header头信息,强大至极。$socket=fsockopen('www.jd88.net','80',$errno,$errstr,3...
这里给出的是Demo,事实上正式的网站对HTTP请求头要求完整性非常严格,建议完善请求头. 1.先看验证文件:<?php if($_COOKIE['username']=='a...
应用场景:PHP模拟购买,商品数量大于0才能购买常见代码:<?php //连接数据库 $con=mysqli_connect("localhost","ihuohuo","927464cy","ihuohuo");...
php官方的超全局变量$_SERVER['PHP_SELF']也能直接获取,只不过如果url参数太多也会获取。下面提供一个方法获取/* * 获取当前PHP文件名称 */ if (!function_exists('phpself...
项目中使用服务来执行webservice,由于对方系统api不稳定,经常导致服务崩溃,只能重启,一个月差不多要重启一次。初期的解决办法是捕获异常,然后continue掉。<?php try { $url = 'http...
<?php /** * daemonize让当前脚本为守护进程执行 * @param string $callback 匿名函数 */ function daemonize($callback) {...