Dalam PHP, kebanyakan format masa dinyatakan dalam cap masa UNIX dan cap masa UNIX adalah berdasarkan s (saat) sebagai unit terkecil ukuran masa. Ini tidak cukup tepat untuk sesetengah aplikasi, jadi microtime() boleh dipanggil untuk mengembalikan cap masa UNIX semasa dan bilangan mikrosaat. Prototaip fungsi ini adalah seperti berikut:
masa mikro bercampur([bool get_as_float]); //Kembalikan cap masa UNIX dan mikrosaat
Anda boleh menyediakan parameter Boolean pilihan untuk fungsi ini Jika parameter ini tidak disediakan semasa memanggil, fungsi ini mengembalikan rentetan dalam format "msec sec". Di mana saat ialah bilangan saat sejak zaman UNIX dan msec ialah bahagian mikro, kedua-dua bahagian rentetan dikembalikan dalam beberapa saat. Jika argumen get_as_float diberikan dan nilainya bersamaan dengan TRUE, microtime() akan mengembalikan nombor titik terapung. Sebelum titik perpuluhan, ia masih dinyatakan dalam format cap masa, manakala selepas titik perpuluhan, ia mewakili nilai halus. Walau bagaimanapun, perlu diambil perhatian bahawa parameter get_as_float baru ditambahkan dalam versi PHP5.0, jadi dalam versi sebelum PHP5, parameter ini tidak boleh digunakan untuk meminta nombor titik terapung secara langsung. Dalam contoh berikut, masa yang diperlukan untuk menjalankan skrip PHP dikira dengan memanggil fungsi microtime() dua kali. Kodnya kelihatan seperti ini:
// Cipta kelas yang mengira masa berjalan skrip
Pemasa kelas{
private $startTime = 0; //Jimat masa apabila skrip mula dilaksanakan (disimpan dalam mikrosaat)
private $stopTime = 0; //Jimat masa apabila skrip menamatkan pelaksanaan (simpan dalam mikrosaat)
//Panggil pada permulaan skrip untuk mendapatkan nilai mikrosaat masa mula skrip
fungsi mula(){
$this->startTime = microtime(true); //Tentukan masa yang diperolehi kepada atribut ahli $startTime
}
//Di penghujung skrip, gunakan nilai mikrosaat masa tamat skrip
fungsi berhenti(){
$this->stopTime = microtime(true); //Tentukan masa yang diperolehi kepada atribut ahli $stopTime
}
//Kembalikan perbezaan antara dua masa pemerolehan dalam skrip yang sama
fungsi dibelanjakan(){
//Selepas pengiraan, bulatkan 4 hingga 5, simpan 4 digit dan kembalikan
pusingan balik(($this->stopTime-$this->startTime),4);
}
}
$timer= new Timer();
$timer->start(); //Panggil kaedah ini apabila fail skrip mula dilaksanakan
usleep(1000); //Kandungan tema skrip, di sini anda boleh tidur selama satu milisaat sebagai contoh
$timer->stop(); //Panggil kaedah ini di hujung fail skrip
echo "Ia mengambil masa".$timer->spent()."";
?>
Dalam skrip di atas, isytiharkan Pemasa kelas yang digunakan untuk mengira masa pelaksanaan skrip. Anda perlu memanggil kaedah start() dalam kelas ini pada permulaan pelaksanaan skrip untuk mendapatkan masa apabila skrip mula dilaksanakan. Dan panggil kaedah stop() dalam kelas ini pada akhir pelaksanaan skrip untuk mendapatkan masa apabila skrip tamat. Kemudian dengan mengakses kaedah spend() dalam kelas ini, anda boleh mendapatkan masa yang diperlukan untuk menjalankan skrip.
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