Heim > Backend-Entwicklung > PHP-Tutorial > 关于php.ini的若干有关问题小结

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

WBOY
Freigeben: 2016-06-13 12:13:21
Original
841 Leute haben es durchsucht

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

【① 时区问题】

 PHP 使用日期函数

 如:

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

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

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

data.timezone = 'Asia/Shanghai';
Nach dem Login kopieren

【②上传问题】

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

 upload_max_filesize = 1024M post_max_size = 1024M
Nach dem Login kopieren

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

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

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

【③页面执行超时问题】

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

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

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

ini_set("max_execution_time", 2400); // s 2400秒 
Nach dem Login kopieren

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

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

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

 <?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);	}  ?> 
Nach dem Login kopieren

【⑤安装扩展程序】

 
 我们以调试工具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"
Nach dem Login kopieren
 当然对于不同的插件具体要加入什么,要根据具体情况而定。

【⑥开启扩展程序库】

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

 extension=php_mysql.dll extension=php_mysqli.dll
Nach dem Login kopieren





Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage