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)
<?php $base64_body = substr(strstr($_POST[base64],','),1); $data= base64_decode($base64_body); file_put_contents($_SERVER[&q...
应用场景:PHP模拟购买,商品数量大于0才能购买常见代码:<?php //连接数据库 $con=mysqli_connect("localhost","ihuohuo","927464cy","ihuohuo");...
源码:特别适用于微信支付中通知微信支付网关function array2xml($arr, $level = 1) { $s = $level == 1 ? "<xml&g...
php多进程应用场景主要是非web端,fpm下是不支持多进程的,非类linux操作系统都不支持,请在cli模式使用.可以使用多进程做任务分发,批量计算,批量文件处理,批量爬虫,网络运维等等。下面看一份简单的入门demo//创建子进程 $pid=pcntl_fork(); //返回-1,创建失败,不...
上篇文章已经讲解arrayacces的原理,现在来讲解下arrayaccess的实际应用。一个大型的互联网项目中必然会存在各种配置信息,例如多种数据库信息:mysql,tidb,mongodb,redis,某个业务模块单独的配置信息如比例,额度等等,那么该如何治理配置信息?PHP项目中大部分的框架都...
(1).前端文件:<form action="upload.php" method="post" enctype="multipart/form-data"> &...