久艹网,亚洲一日韩欧美中文字幕2019,国产欧美日韩精品专区黑人,一区二区三区久久99

中山php|最優(yōu)網(wǎng)絡(luò)中山做網(wǎng)站 中山php建站

最優(yōu)良人

2011/08/14 at 02:38

上傳文件時(shí)$_FILES為空的解決方法

用xheditor上傳文件時(shí),出現(xiàn)一點(diǎn)上傳就卡死沒(méi)反應(yīng)的問(wèn)題,在后臺(tái)處理上傳的php文件里打印$_FILES時(shí)發(fā)現(xiàn)為空數(shù)組,出現(xiàn)這個(gè)問(wèn)題的原因主要有兩個(gè):表單原因或者php設(shè)置原因:

1,表單類(lèi)型:

上傳文件的表單編碼類(lèi)型必須設(shè)置成 enctype="multipart/form-data",因?yàn)橐獋鞔髷?shù)據(jù),一般提交方式用POST

2,php設(shè)置問(wèn)題:

php默認(rèn)的post_max_size 為2M.如果 POST 數(shù)據(jù)尺寸大于 post_max_size $_POST 和 $_FILES superglobals 便會(huì)為空. 解決的方法是:

1. 一般的文件上傳,除非文件很小.就像一個(gè)5M的文件,很可能要超過(guò)一分鐘才能上傳完. 但在php中,默認(rèn)的該頁(yè)最久執(zhí)行時(shí)間為 30 秒.就是說(shuō)超過(guò)30秒,該腳本就停止執(zhí)行. 這就導(dǎo)致出現(xiàn) 無(wú)法打開(kāi)網(wǎng)頁(yè)的情況.這時(shí)我們可以修改 max_execution_time 在php.ini里查找 max_execution_time 默認(rèn)是30秒.改為 max_execution_time = 0(可修改范圍為PHP_INI_ALL) 0表示沒(méi)有限制

或者在php文件頭設(shè)置ini_set('max_execution_time',0);

2. 修改 post_max_size 設(shè)定 POST 數(shù)據(jù)所允許的最大大小。此設(shè)定也影響到文件上傳。 查找 post_max_size .改為 post_max_size = 150M(可修改范圍為PHP_INI_PHP_INI_PERDIR)

3. 很多人都會(huì)改了第二步.但上傳文件時(shí)最大仍然為 8M. 為什么呢.我們還要改一個(gè)參數(shù)upload_max_filesize 表示所上傳的文件的最大大小。 查找upload_max_filesize,默認(rèn)為8M改為 upload_max_filesize = 100M(可修改范圍為PHP_INI_PHP_INI_PERDIR)

另外要說(shuō)明的是,post_max_size 大于 upload_max_filesize 為佳.

PHP_INI_* 常量的定義
常量 含義
PHP_INI_USER 1 配置選項(xiàng)可在用戶的 PHP 腳本或 Windows 注冊(cè)表中設(shè)置
PHP_INI_PERDIR 2 配置選項(xiàng)可在 php.ini, .htaccesshttpd.conf 中設(shè)置
PHP_INI_SYSTEM 4 配置選項(xiàng)可在 php.ini or httpd.conf 中設(shè)置
PHP_INI_ALL 7 配置選項(xiàng)可在各處設(shè)置
標(biāo)簽:
-