ホームページ >バックエンド開発 >PHPチュートリアル >php.ini に関するいくつかの関連問題の概要

php.ini に関するいくつかの関連問題の概要

WBOY
WBOYオリジナル
2016-06-13 12:13:21839ブラウズ

php.ini に関するいくつかの問題のまとめ

[①タイムゾーンの問題]

PHP は日付関数を使用します

など:

strtotime('2014-01-05');date('Y-m-d H:i',time());
8 時間を足したり、8 時間を引いたりすると、不可解な結果が生じます
それで、どうすればよいでしょうか?
これはタイムゾーンの問題です。タイムゾーンを変更してください。

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

解決策 2:
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’; //需要使用命令增加该目录的读写权限

[③ページ実行タイムアウトの問題]


ページのデータ量が比較的多く、短時間で完了できずタイムアウトが発生する場合があります
解決方法は?
方法 1:
php.ini ファイルを設定します

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

方法 2:
プログラム内で変更
//最大実行時間

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

【④マジッククオートの開閉】


SQL インジェクション、悪意のあるフォーム送信、マジック クォートの導入の防止について、オンとオフを切り替える方法について
解決方法は?
方法 1:
php.ini を設定します

 magic_quotes_gpc = Off/on ; magic_quotes_runtime = Off/on ; magic_quotes_sybase = Off/on ;
方法 2:
各プログラムのヘッダー ファイルに追加します:

 <?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);	}  ?> 

【⑤拡張機能のインストール】


デバッグツール 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





声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。