关于php.ini的若干问题小结

来源:互联网 发布:linux纯文本如何向上 编辑:程序博客网 时间:2024/05/29 18:09

【① 时区问题】

 PHP 使用日期函数

 如:

strtotime('2014-01-05');date('Y-m-d H:i',time());
会出现莫名其妙的会加8小时 或者减八小时 后的结果
 那么怎么办?
 这是时区问题,修改时区即可。

 解决方案一:
ini_set('date.timezone','Asia/Shanghai'); //这句必须放在文件首行 //或者 date_default_timezone_set('Asia/Shanghai'); //这句可以放在任何地方

 解决方案二:
 直接修改PHP.ini文件

data.timezone = 'Asia/Shanghai';

【②上传问题】

 很多时候,上传比较大的文件的时候,你就会发现,提示上传超过限制之类的提示
 怎么解决?
 上传大文件主要涉及配置upload_max_filesize和post_max_size两个选项
 找到PHP.ini 文件:

 upload_max_filesize = 1024M post_max_size = 1024M

这样上传单个文件就可以达到1G了,当然可以设置你任意想设置的大小。

 [注意:] Linux下可能会涉及上传临时文件权限的问题。
 如配置

upload_tmp_dir =’/temp/upload’; //需要使用命令增加该目录的读写权限

【③页面执行超时问题】

 
 有时候页面数据量比较大,短时间执行不完,就会出现超时现象
 怎么解决?
 方式一:
 设置php.ini 文件

 max_execution_time = 60*60*10; #表示允许执行的最大时间为10分钟                                  #当值为0的时候 表示无限制 (不推荐)

方式二:
 在程序中修改
 //修改最大执行时间

ini_set("max_execution_time", 2400); // s 2400秒 

【④魔术引号的开启与关闭】

 
 关于防止sql注入、表单恶意提交,引入魔术引号,如何开启关闭呢
 怎么解决?
 方式一:
 设置php.ini

 magic_quotes_gpc = Off/on ; magic_quotes_runtime = Off/on ; magic_quotes_sybase = Off/on ;
方式二:
 每个程序的头文件处加入:

 <?phpif (get_magic_quotes_gpc()) {function stripslashes_deep($value){$value = is_array($value) ?array_map('stripslashes_deep', $value) :stripslashes($value);return $value;}$_POST = array_map('stripslashes_deep', $_POST);$_GET = array_map('stripslashes_deep', $_GET);$_COOKIE = array_map('stripslashes_deep', $_COOKIE);$_REQUEST = array_map('stripslashes_deep', $_REQUEST);}  ?> 

【⑤安装扩展程序】

 
 我们以调试工具xbug 为例
 下载对应版本的xdebug 文件 将其放入PHP安装目录
 在php.ini 中添加如下代码,重启Apache/nginx 即可

 zend_extension = "E:/wamps/php/myext/php_xdebug-2.2.6-5.3-vc9.dll";  [xdebug] xdebug.remote_enable = Off ; xdebug.profiler_enable = Off ; xdebug.profiler_enable_trigger = on; xdebug.profiler_output_name = cachegrind.out.%t.%p;  xdebug.profiler_output_dir = "E:/wamps/tmp"
 当然对于不同的插件具体要加入什么,要根据具体情况而定。

【⑥开启扩展程序库】

 
 比如我们要使用mysql的函数库,我们要开启如下:(去掉前面的';'即可)

 extension=php_mysql.dll extension=php_mysqli.dll





1 0
原创粉丝点击