PHPプログラムに関する各種メモ書き:タグ「メモリ」での検索

ファイルアップロードのファイル要領制限(upload_max_filesize)を変更する。

1. .htaccess に記述する場合

#  ファイルアップロードの最大サイズを 10Mに設定
php_value upload_max_filesize 10M
#  ファイルアップロードの最大サイズを 500Kに設定
php_value upload_max_filesize 500K

2. php.ini 内に記述する場合(さくらのレンタルサーバはこちらの方法です。)

;ファイルアップロードの最大サイズを 10Mに設定
upload_max_filesize = 10M

3. phpスクリプト内に記述する場合(サーバの設定によっては許可されていない場合があります)

// ファイルアップロードの最大サイズを 10M に設定
ini_set('upload_max_filesize', 10 * 1024 * 1024); 

● なお現在のファイルアップロード制限の設定を取得するには

print "upload_max_filesize: " . ini_get('upload_max_filesize')." Bytes です。";

とします。

No.690
02/12 16:29

edit

ファイル
.htaccess
メモリ
エラー対処

PHPプログラムが使用しているメモリを取得する

PHPプログラムが使用しているメモリを取得するには

$mem = memory_get_usage();
$mem = number_format($mem);
print("Memory:{$mem}");

などとするとよいでしょう。

※ ただし関数を呼び出した時点での使用メモリなので注意。


最大どれだけメモリを使用したかは

memory_get_peak_usage();

で取得できます

メソッドとして持っておくといいでしょう

public function dumpmem(){
	print "\n".'<pre style="text-align:left;">'."\n";
	$mem     = number_format(memory_get_usage());
	$peakmem = number_format(memory_get_peak_usage());
	print("Memory:{$mem} / Peak Memory:{$peakmem}");
	print "\n</pre>\n";
}

No.653
04/19 00:47

edit

メモリ

メモリエラー「PHP Fatal error: Allowed memory size of 8388608 bytes exhausted」

CSVで大きなファイルをコンバート中にメモリエラー

PHP Fatal error: Allowed memory size of 8388608 bytes exhausted

が発生。

このエラーはメモリ不足なので、PHPの最大使用メモリを増やしてあげると回避できます。

下記の例では200MBytesに設定しています。

対処法 1.

/etc/php.ini の設定を以下のように変える

memory_limit = 200M      ; Maximum amount of memory a script may consume (8MB)

対処法 2.

PHPプログラム内に下記コードを記述する

ini_set('memory_limit', '200M');
No.472
09/18 18:05

edit

ファイル
メモリ