system

(PHP 4, PHP 5, PHP 7)

systemBelirtilen harici komutu çalıştırır ve çıktısını gösterir

Açıklama

system ( string $komut [, int &$dönüş_değeri ] ) : string

system() işlevi C dilindeki adaşı gibi verilen komut'u çalıştırır ve sonucunu çıktılar.

PHP bir sunucu modülü olarak çalışırken, bu işlev her çıktı satırından sonra HTTP sunucusunun çıktı tamponunu boşaltmaya çalışır.

Bir komutu, çıktısı ortamla etkileşime girmeden çalıştırmak isterseniz passthru() işlevini kullanın.

Değiştirgeler

komut

Çalıştırılacak komut.

dönüş_değeri

Bu değiştirge belirtilmişse çalıştırılan komutun çıktısı bu değişkene yazılır.

Dönen Değerler

Başarısızlık durumunda FALSE aksi takdirde komut çıktısının son satırı döner.

Örnekler

Örnek 1 - system() örneği

<?php
echo '<pre>';

// "ls" kabuk komutunun sonucunu çıktılar ve
// çıktının son satırını $son_satır ile döndürürken,
// işlevin dönüş değerini $sonuç değişkenine kaydeder.
$son_satır system('ls'$sonuç);

// Bilgileri basalım
echo '
</pre>
<hr />Çıktının son satırı: ' 
$son_satır '
<hr />Dönüş değeri: ' 
$sonuç;
?>

Notlar

Uyarı

Kullanıcı kaynaklı verilerin bu işlev üzerinden aktarımına izin verecekseniz, kullanıcının bazı komutlar çalıştırarak sistemi kandıramaması için escapeshellarg() veya escapeshellcmd() işlevlerini kullanınız.

Bilginize:

Eğer bir uygulama bu işlevle başlatılmışsa uygulamanın artalanda çalışmasını sürdürebilmesi için uygulama çıktısı ya bir dosyaya ya da başka bir çıktı akımına yönlendirilmelidir. Aksi takdirde, uygulama sonlanana kadar PHP askıda kalacaktır.

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