Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menetapkan masa menunggu tamat masa dalam php

Bagaimana untuk menetapkan masa menunggu tamat masa dalam php

PHPz
PHPzasal
2023-03-29 11:34:413475semak imbas

Apabila membangun dengan PHP, kadangkala anda perlu melakukan operasi jangka panjang, seperti permintaan rangkaian, pertanyaan pangkalan data, operasi fail, dsb. Dalam kes ini, tamat masa lalai PHP mungkin tidak mencukupi untuk menyelesaikan operasi ini, menyebabkan program ralat. Untuk menyelesaikan masalah ini, kita perlu menetapkan masa menunggu tamat masa PHP.

Masa menunggu tamat masa PHP merujuk kepada masa menunggu maksimum apabila skrip PHP dilaksanakan Jika melebihi masa ini, ia akan ditamatkan secara paksa. Secara lalai, masa menunggu tamat masa PHP ialah 30 saat, yang boleh dilaraskan dengan mengubah suai fail php.ini.

  1. Ubah suai fail php.ini

Mula-mula, kita perlu mencari fail php.ini. Di bawah sistem Linux, php.ini biasanya terletak dalam direktori /etc/php/[version]/cli/. Di bawah sistem Windows, php.ini biasanya terletak dalam direktori pemasangan PHP.

Buka fail php.ini dan cari dua parameter berikut:

max_execution_time = 30
max_input_time = 60

Antaranya, max_execution_time mewakili masa pelaksanaan maksimum skrip PHP (dalam saat), lalainya ialah 30 saat; max_input_time Menunjukkan masa maksimum (dalam saat) untuk skrip PHP menerima data input seperti POST, GET, FILE, dll., dan lalai ialah 60 saat.

Kami boleh mengubah suai nilai kedua-dua parameter ini kepada nilai yang kami perlukan, contohnya:

max_execution_time = 60
max_input_time = 120

Ini akan menjadikan masa pelaksanaan maksimum skrip PHP 60 saat dan masa input maksimum 120 Saat.

  1. Tetapkan tamat masa dalam kod

Selain mengubah suai fail php.ini, kami juga boleh menetapkan masa menunggu tamat masa dalam kod PHP. Dalam PHP, kita boleh menggunakan fungsi set_time_limit untuk menetapkan masa pelaksanaan maksimum skrip.

Sebagai contoh, kod berikut akan menetapkan masa pelaksanaan maksimum skrip PHP kepada 60 saat:

set_time_limit(60);

Jika kita ingin mengubah suai parameter max_input_time dalam kod, kita boleh menggunakan fungsi ini_set.

Sebagai contoh, kod berikut akan menetapkan masa maksimum untuk skrip PHP menerima input kepada 120 saat:

ini_set('max_input_time', 120);

Perlu diambil perhatian bahawa tetapan ini hanya berkuat kuasa dalam semasa skrip, meninggalkan skrip semasa Selepas itu, tamat masa akan kembali kepada nilai yang dikonfigurasikan dalam fail php.ini.

  1. Gunakan fungsi ignore_user_abort

PHP juga menyediakan fungsi ignore_user_abort, yang membolehkan skrip PHP terus dilaksanakan selepas pelanggan memutuskan sambungan. Fungsi ini sangat berguna apabila bekerja dengan skrip yang berjalan lama.

Sebagai contoh, kod berikut akan menetapkan skrip PHP untuk mengabaikan putus sambungan pelanggan dan meneruskan pelaksanaan:

ignore_user_abort(true);

Perlu diingat bahawa selepas menetapkan fungsi ignore_user_abort, jika klien memutuskan sambungan Jika sambungan dibuka, skrip PHP akan terus dilaksanakan, tetapi tiada apa yang akan dikeluarkan kepada klien.

Ringkasan

Dalam pembangunan PHP, masa menunggu tamat masa adalah isu yang sangat penting dan perlu ditetapkan mengikut situasi tertentu. Kita boleh melaraskan masa menunggu tamat masa PHP dengan mengubah suai fail php.ini, menetapkan masa menunggu tamat masa dalam kod, menggunakan fungsi ignore_user_abort, dsb. untuk mengendalikan skrip yang berjalan lama.

Atas ialah kandungan terperinci Bagaimana untuk menetapkan masa menunggu tamat masa dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn