浏览模式: 普通 | 列表
php.ini 中写错了open_basedir的允许目录,默认是 C:\windows\temp
open_basedir = "C:\windows\tmp;"
改为
open_basedir = "C:\windows\temp;"



;upload_tmp_dir =
改为
upload_tmp_dir = "C:/Windows/Temp"


其他知识:
$_FILES['file']['error']

其值为 0,没有错误发生,文件上传成功。

其值为 1,上传的文件超过了 PHP.ini 中 upload_max_filesize 选项限制的值。

其值为 2,上传文件的大小超过了 HTML表单中 MAX_FILE_SIZE 选项指定的值。
...

阅读全文…
Zend Optimizer/3.3.3 解密加代码优化,提高PHP应用程序的执行速度,显著降低服务器的CPU负载。
Zend Guard Loader/5.5.0/6.0 解密加代码优化,提高PHP应用程序的执行速度,显著降低服务器的CPU负载。

PHP 5.3.X 开始 Zend Optimizer 正式被 Zend Guard Loader 取代了。安装方法有所不同,以下是安装 Zend Guard Loader的具体方法:

下载地址:ZendGuardLoader-php-5.3-Windows.zip

下载好后解压压缩包,找到 ZendGuardLoader-php-5.3-Windows\ZendServer\lib\loader\php-5.3.x 目录下的 ZendLoader.dll 文件,将它放到你的php目录下ext下:[img]attachments/...

阅读全文…

gbk下json_encode,中文返回null的问题

[ 2019-01-18 12:51:54 | 作者: admin ]
p.s. 还是可以先将gbk中文转utf8再使用json_encode函数
                if($charset =="gbk"){
                     //gbk参数全部转utf8
                     $_POST = $this->array_iconv($_POST,'utf-8','gbk//IGNORE');
                     $_GET = $this->array_iconv($_GET,'utf-8','gbk//IGNORE');


                     //gbk数组转json
                     $data = array("city"=>"杭州");
                     $data = $this->array_iconv( $data ,'gbk','utf-8//IGNORE');
...

阅读全文…
摘录:https://www.cnblogs.com/kenshinobiy/p/7470674.html

约定几个目录
/usr/local/php/sbin/php-fpm
/usr/local/php/etc/php-fpm.conf
/usr/local/php/etc/php.ini

一,php-fpm的启动参数

#测试php-fpm配置
/usr/local/php/sbin/php-fpm -t
/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf -t
  
#启动php-fpm
/usr/local/php/sbin/php-fpm
/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini
...

阅读全文…
.p.s.最好是转为相同的类型再比较,都转成字符串或者数字


1、==符号是自动转成相同的类型后再进行
例如:
$a = 9;
$b = '9b27c7138797df11684414916a4138e0' ;
echo ($a==$b);
结果是 1 ,因为$b被自动转类型了 $b = intval('9b27c7138797df11684414916a4138e0' )=9
另外 echo ("太平"==0) 结果也是1,所以涉及到不同类型字符串比较一定看看是否会出现没有想到的问题



2、==运算符的大数据溢出问题,如果大于16位会溢出,需要使用===替代
例如:全是17位,结果不一定会正确
var_dump("14210022800015700"=="14210022800015701"); //bool(true)
...

阅读全文…
1、问题

  php代码写好之后执行发现居然没有生效,打断点,改代码、刷新都没有达到预期的效果。但是间隔60秒之后刷新就看到效果了,或者删除文件就里面见效。

2、原因

  从phpinfo()页面输出搜索"60",发现了这个参数opcache.revalidate_freq=60。原来是Opcache模块设定了60秒缓存时间,需要60秒后才重新生成操作码。详细可见《深入理解PHP Opcode缓存原理》

3、解决方案

  将参数opcache.revalidate_freq设置为0,重启php-fpm:
service php-fpm restart



查看opcache状态
php -i |grep opcache

// 结果如下,可以看出opcache.enable => On,处于开启状态
Configure
...

阅读全文…

php图片压缩类

[ 2018-11-01 15:48:20 | 作者: admin ]
<?php

/**
   * 图片压缩类:通过缩放来压缩。
   * 如果要保持源图比例,把参数$percent保持为1即可。
   * 即使原比例压缩,也可大幅度缩小。数码相机4M图片。也可以缩为700KB左右。如果缩小比例,则体积会更小。
   *
   * 结果:可保存、可直接显示。
   */
class imgcompress{
         private $src;
         private $image;
         private $imageinfo;
         private $percent = 0.5;
         /**
           * 图片压缩
           * @param $src 源图
           * @param float $percent 压缩比例
           */
         public function __construct($src, $percent=1)
...

阅读全文…