Dosya Sistemi İşlevleri
PHP Manual

popen

(PHP 4, PHP 5, PHP 7)

popenBir süreç tanıtıcısı açar

Açıklama

resource popen ( string $komut , string $kip )

Belirtilen komut tarafından çatallanarak çalıştırılan bir sürece bir boruhattı açar.

Değiştirgeler

komut

Komut.

kip

Kip.

Dönen Değerler

fopen() işlevi tarafından döndürülenden farklı olarak hem okuma hem de yazma için kullanılabilen ve pclose() ile kapatılması gereken bir dosya tanıtıcısı ile döner. Bu tanıtıcı, fgets(), fgetss() ve fwrite() işlevleri tarafından kullanılabilir.

Bir hata oluşursa FALSE döner.

Örnekler

Örnek 1 - popen() örneği

<?php
$handle 
popen("/bin/ls""r");
?>

Belirtilen komut dosyası bulunamazsa da geçerli bir tanıtıcı döner. Bu tuhaf görünebilir fakat böyle olması gerekir; böylece kabuk tarafından döndürülen hata iletisine erişmeniz sağlanır:

Örnek 2 - Hata döndüren popen() örneği

<?php
error_reporting
(E_ALL);

/* Komutu std. hataya yönlendirelim. */
$bt popen('/bir/yol/calistirilabilirdosya 2>&1''r');
echo 
"'$tanıtıcı'; " gettype($bt) . "\n";
$okunan fread($bt2096);
echo 
$okunan;
pclose($bt);
?>

Notlar

Bilginize:

İki yönlü destek arıyorsanız proc_open() kullanın.

Bilginize: Güvenli kip etkinken, dosyaları sadece safe_mode_exec_dir ile çalıştırabilirsiniz. Uygulamadan kaynaklanan sebeplerle çalıştırılabilirin dosya yolunda .. bileşenine şimdilik izin verilmemektedir.

Uyarı

güvenli kipin etkin kılınmasıyla, komut dizgesi escapeshellcmd() ile öncelenir. Böylece, echo y | echo x komut dizgesi echo y \| echo x haline gelir.

Ayrıca Bakınız


Dosya Sistemi İşlevleri
PHP Manual