ฉันกำลังดาวน์โหลดไฟล์ JSON จากแหล่งออนไลน์และเมื่อมันทำงานผ่านลูปฉันได้รับข้อผิดพลาดนี้:
ข้อผิดพลาดร้ายแรง: เกินเวลาดำเนินการสูงสุด 30 วินาทีใน C: \ wamp \ www \ temp \ fetch.php ที่บรรทัด 24
ฉันกำลังดาวน์โหลดไฟล์ JSON จากแหล่งออนไลน์และเมื่อมันทำงานผ่านลูปฉันได้รับข้อผิดพลาดนี้:
ข้อผิดพลาดร้ายแรง: เกินเวลาดำเนินการสูงสุด 30 วินาทีใน C: \ wamp \ www \ temp \ fetch.php ที่บรรทัด 24
คำตอบ:
วงของคุณอาจไม่มีที่สิ้นสุด หากไม่ใช่คุณสามารถขยายเวลาดำเนินการสูงสุดเช่นนี้:
ini_set('max_execution_time', 300); //300 seconds = 5 minutes
และ
set_time_limit(300);
สามารถใช้เพื่อขยายการ จำกัด เวลาชั่วคราว
ฉันมีปัญหาเดียวกันและแก้ไขได้โดยการเปลี่ยนค่าสำหรับพารามิเตอร์max_execution_time
ในphp.ini
เช่นนี้
max_execution_time = 360 ; Maximum execution time of each script, in seconds (I CHANGED THIS VALUE)
max_input_time = 120 ; Maximum amount of time each script may spend parsing request data
;max_input_nesting_level = 64 ; Maximum input variable nesting level
memory_limit = 128M ; Maximum amount of memory a script may consume (128MB by default)
ฉันหวังว่านี่จะช่วยคุณได้
php.ini
สามารถพบได้ใน/etc/php5/apache2/php.ini
.... ฉันใช้ Ubuntu 13.04 ...
คำตอบทั้งหมดข้างต้นถูกต้อง แต่ฉันใช้วิธีง่ายๆในการหลีกเลี่ยงในบางกรณี
เพียงแค่ใส่คำสั่งนี้ในจุดเริ่มต้นของสคริปต์ของคุณ:
set_time_limit(0);
ฉันวิ่งเข้าไปในปัญหานี้ขณะที่การอัพเกรดเพื่อWordPress 4.0 โดยค่าเริ่มต้น WordPress จำกัด เวลาดำเนินการสูงสุดเป็น 30 วินาที
เพิ่มรหัสต่อไปนี้ไปยังไฟล์. htaccessของคุณในไดเรกทอรีรากของการติดตั้ง WordPressของคุณเพื่อข้ามค่าเริ่มต้น
php_value max_execution_time 300 //where 300 = 300 seconds = 5 minutes
แก้ไขphp.ini
ค้นหาบรรทัดนี้:
max_execution_time
เปลี่ยนค่าเป็น 300:
max_execution_time = 300
300 หมายถึงเวลาดำเนินการ 5 นาทีสำหรับคำขอ http
สคริปต์ของคุณหมดเวลาแล้ว ดูฟังก์ชั่นset_time_limit ()เพื่อเพิ่มเวลาในการประมวลผล หรือโปรไฟล์สคริปต์เพื่อให้ทำงานได้เร็วขึ้น :)
หากทั้งหมดข้างต้นไม่ได้ผลสำหรับคุณให้เพิ่ม.htaccess
ไฟล์ไปยังไดเรกทอรีที่สคริปต์ของคุณอยู่และวางไว้ข้างใน
<IfModule mod_php5.c>
php_value post_max_size 200M
php_value upload_max_filesize 200M
php_value memory_limit 300M
php_value max_execution_time 259200
php_value max_input_time 259200
php_value session.gc_maxlifetime 1200
</IfModule>
นี่คือวิธีที่ผมแก้ปัญหาของฉันไม่ini_set('max_execution_time', 86400);
ว่ามิได้set_time_limit(86400)
แก้ปัญหาของฉัน แต่วิธีนี้ทิ้งได้
เราสามารถแก้ปัญหานี้ได้ 3 วิธี
1) การใช้ไฟล์ php.ini
2) การใช้ไฟล์. htaccess
3) การใช้ไฟล์ Wp-config.php (สำหรับ Wordpress)
คุณสามารถลบข้อ จำกัด โดยตั้งเป็นศูนย์โดยเพิ่มบรรทัดนี้ที่ด้านบนของสคริปต์ของคุณ:
<?php ini_set('max_execution_time', 0); ?>
/etc/php5(your php version)/apache2/php.ini
ตามเส้นทาง
เปิดและตั้งค่าเป็นค่าmax_execution_time
ที่ต้องการ
อาจตรวจสอบสิ่งที่คุณเปลี่ยนแปลงภายใต้ไฟล์ php.ini ตัวอย่างเช่นฉันเปลี่ยน"; intl.default_locale ="เป็น"; intl.default_locale = en_utf8"เพื่อเปิดใช้งาน "Internationalization extension (Intl)" โดยไม่ต้องเพิ่ม"extension = php_intl.dll"ข้อผิดพลาดเดียวกันนี้เกิดขึ้น ดังนั้นฉันขอแนะนำให้ตรวจสอบข้อผิดพลาดที่คล้ายกัน
เพิ่มเวลาดำเนินการสคริปต์ของคุณโดยเพิ่มบรรทัดต่อไปนี้ที่ด้านบนสุดของสคริปต์ PHP
ini_set('max_execution_time', 120); //120 seconds = 2 minutes
การอ้างอิงนำมาจากเพิ่มเวลาดำเนินการสคริปต์ PHP
ที่จะขยายของคุณmax_execution_time
คุณสามารถใช้อย่างใดอย่างหนึ่งหรือini_set
set_time_limit
// Set maximum execution time to 10 seconds this way
ini_set('max_execution_time', 10);
// or this way
set_time_limit(10);
sleep(2);
ini_set('max_execution_time', 5);
register_shutdown_function(function(){
var_dump(microtime(true) - $_SERVER['REQUEST_TIME_FLOAT']);
});
for(;;);
//
// var_dump outputs float(7.1981489658356)
//
ดังนั้นหากคุณต้องการตั้งค่าจำนวนเวลาสูงสุดที่แน่นอนของสคริปต์สามารถเรียกใช้คำสั่งของคุณจะต้องเป็นอันดับแรก
ความแตกต่างระหว่างทั้งสองฟังก์ชั่นคือ
set_time_limit
ไม่ส่งคืนข้อมูลว่าสำเร็จหรือไม่ แต่จะส่งคำเตือนเมื่อเกิดข้อผิดพลาดini_set
ส่งคืนค่าเก่าเมื่อสำเร็จหรือเป็นเท็จเมื่อล้มเหลวโดยไม่มีการเตือน / ข้อผิดพลาดคุณสามารถทำได้อย่างง่ายดายด้วย WHM เพิ่งถึง:
WHM -> Service Configuration -> การกำหนดค่า PHP
editor->
max_execution_time=30
(30 เป็นค่าเริ่มต้นให้เปลี่ยนเป็นค่าที่คุณต้องการ)
ฉันมีปัญหาเดียวกันในเว็บไซต์ WordPress ฉันเพิ่มในไฟล์. htaccess แล้วทำงานได้ดีสำหรับฉัน
php_value max_execution_time 6000000
ฉันได้ทำการเปลี่ยนแปลงบางอย่างในกรณีของฉันใน: xampp \ phpMyAdmin \ libraries \ config.default.php
ฉันได้ค้นหา: $cfg['ExecTimeLimit']
และเปลี่ยนค่าทางด้านขวา ...
คุณสามารถเปลี่ยนค่าของมือขวาเป็นค่าที่สูงกว่าเช่น '5000' และมันใช้งานได้