Maison > développement back-end > tutoriel php > 关于php.ini的若干有关问题小结

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

WBOY
Libérer: 2016-06-13 12:13:21
original
856 Les gens l'ont consulté

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

【① 时区问题】

 PHP 使用日期函数

 如:

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

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

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

data.timezone = 'Asia/Shanghai';
Copier après la connexion

【②上传问题】

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

 upload_max_filesize = 1024M post_max_size = 1024M
Copier après la connexion

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

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

upload_tmp_dir =’/temp/upload’; //需要使用命令增加该目录的读写权限
Copier après la connexion

【③页面执行超时问题】

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

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

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

ini_set("max_execution_time", 2400); // s 2400秒 
Copier après la connexion

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

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

 magic_quotes_gpc = Off/on ; magic_quotes_runtime = Off/on ; magic_quotes_sybase = Off/on ;
Copier après la connexion
方式二:
 每个程序的头文件处加入:

 <?php if (get_magic_quotes_gpc()) {		function stripslashes_deep($value)		{			$value = is_array($value) ?						array_map(&#39;stripslashes_deep&#39;, $value) :						stripslashes($value);			return $value;		}		$_POST = array_map(&#39;stripslashes_deep&#39;, $_POST);		$_GET = array_map(&#39;stripslashes_deep&#39;, $_GET);		$_COOKIE = array_map(&#39;stripslashes_deep&#39;, $_COOKIE);		$_REQUEST = array_map(&#39;stripslashes_deep&#39;, $_REQUEST);	}  ?> 
Copier après la connexion

【⑤安装扩展程序】

 
 我们以调试工具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"
Copier après la connexion
 当然对于不同的插件具体要加入什么,要根据具体情况而定。

【⑥开启扩展程序库】

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

 extension=php_mysql.dll extension=php_mysqli.dll
Copier après la connexion





Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal