重构框架的时候想要考虑支持下cli模式,于是参考了thinkphp的底层。
/**
* 获取应用根目录
* @return string
*/
public static function getRootPath()
{
if ('cli' == PHP_SAPI)
{
$scriptName = realpath($_SERVER['argv'][0]);
}
else
{
$scriptName = $_SERVER['SCRIPT_FILENAME'];
}
$path = realpath(dirname($scriptName));
//返回
return $path . DIRECTORY_SEPARATOR;
} <?php //对比$this和self /* * $this更倾向于对象本身 * */ class Par{ public  ...
//参数1 文件名 参数2 缩放比例 function _thumb($_filename,$_percent){ ob_clean();...
PHP的session文件夹默认保存在同一个文件,随着访客的增多,访问的速度会非常慢,例如部分管理系统后台每天登陆1000次,1个月就创建了30000个session文件,一年后是多少?假设这个系统的用户是上万人呢?方法1:每个网站使用自己的session文件夹,代码如下:<?php $pat...
前面的文章对于高并发下单商品导致商品库存为负值的问题请先阅读再阅读本篇文章一定对您有帮助,建议亲手测试较好。加上文件锁后的下单处理代码:【一】.阻塞模式:(如果其他进程已经加锁文件,当前进程会一直等其他进程解锁文件后继续执行)<?php //连接数据库 $con=mysqli_connect(...
<?php /* *算法学习自百度.只是学习和记录 */ header("Content-type:text/html;charset=utf-8"); //1.设置奖项,id是奖项id,name是中奖名称,v是中奖概率 $arr =&n...
php多进程应用场景主要是非web端,fpm下是不支持多进程的,非类linux操作系统都不支持,请在cli模式使用.可以使用多进程做任务分发,批量计算,批量文件处理,批量爬虫,网络运维等等。下面看一份简单的入门demo//创建子进程 $pid=pcntl_fork(); //返回-1,创建失败,不...