我想改變php設置,但是從「.php」頁面而不是php.ini。我想改變的設置是如何從php代碼更改php設置?
upload_max_filesize
,post_max_size
和memory_limit
我想改變php設置,但是從「.php」頁面而不是php.ini。我想改變的設置是如何從php代碼更改php設置?
upload_max_filesize
,post_max_size
和memory_limit
,可以在PHP中可以改變這些的只有一個是最後一個,可與ini_set改變這樣的:
ini_set('memory_limit', '32M');
PHP始終在PHP腳本啓動之前處理客戶端請求。這意味着上傳的文件已經上傳,並且張貼表單在腳本啓動之前已經完全發佈。因此,上傳和發佈設置不能在腳本中設置,因爲它們在PHP腳本啓動時已經不相關。
如果您的服務器管理員並沒有阻止它,你可以使用ini_set()
更改內存限制:
ini_set("memory_limit","16000000"); // abbreviations like "16M" work only
// in php.ini, always use full numbers here
加載PHP腳本之前需要另外兩種選擇,沒有辦法改變那些在php.ini中。
然後我怎麼改變他們,我的控制面板不給我改變php.ini設置的選項 但我需要上傳大於100MB的文件 – Starx 2010-05-12 11:30:34
@Starx對不起,如果你不願意,無法訪問'php.ini'。您必須與您的提供商或服務器管理員交談,並要求他們爲您增加限制。 – 2010-05-12 11:33:05
您可以使用.htaccess文件試試吧,如果你有設置AllowOverride選項:
放置一個名爲.htaccess的到你的根目錄文件:
php_value upload_max_filesize 10000
php_value post_max_size 10000
php_value memory_limit 10000
哈!忘記這種可能性。在共享主機中並不總是可用,但值得一試。 +1 – 2010-05-13 08:51:09
可以請你告訴我把這個.htaccess放在哪裏。我的意思是你的webroot,但在public_html \或www \或執行該腳本的文件夾如public_html \ uploads \ – Starx 2010-05-31 06:51:10
困惑,你可以把它放在webroot下面的任何文件夾。把它放在你的index.php文件旁邊,它應該可以工作。 – 2010-05-31 07:17:22
和文件上傳可能會被限制webserver配置。 – symcbean 2010-05-12 10:40:42