Ben başka bir php sayfa arka plan işlemi olarak bir php sayfası başlatmak istiyorum.
Kullan popen():
$command = 'php somefile.php';
pclose(popen($command,'r'));
Bir arka plan işlemi olarak bu tanıtımları somefile.php.
Bu benim host (yürütme süresi 15 dakika ile sınırlı cronjobs kim, bu yüzden benim yedekleme komut her zaman aşımı olurdu) tarafından uygulanan kısıtlamalar etrafında almak için kullanılan bir tekniktir.
exec( 'php somefile.php | /dev/null &' );
Bu hattın gibidir:
exec() - PHP reference belirli bir komutu çalıştırır, Linux komut satırından sanki.php somefile.php: açmak ve çalıştırmak için PHP çağırır somefile.php. Bu, o dosya bir web tarayıcısı üzerinden erişilen olsaydı ne olurdu gibi aynı davranıştır.| ("boru") - belirli bir hedefi işlem komutunun çıktısını gönderir. Bu durumda, o "boru" normal dosya erişen web tarayıcısı tarafından okunacak içeriği olur./dev/null - Bir karadelik. Hayır, şaka değil. Bu sadece onu yok etmek istiyorsanız çıktı göndermek bir yerdir.& - Bir Linux komut sonuna kadar bu karakter ekleme "beklemeyin. - Background gönder ve devam et" anlamına gelirYani, özetle, sağlanan kod, bir PHP komut dosyası çalıştırmak hiçbir geri çıkışı, ve bir sonraki satıra devam etmeden önce bitirmek için beklemek olmaz.
(And, as always, if any of these assumptions on my part are in error, I would love to be corrected by more knowledgeable members of the community.)