Saya mencoba ini di command prompt dan itu benar-benar menjalankan program dengan parameter yang diberikan. Ini contoh perintahnya Show
Tetapi ketika saya menjalankan perintah ini dari file _tidak ada yang terjadi. Ini adalah pertama kalinya saya menggunakan fungsi exec(), jadi saya tidak mengetahui detailnya. Apa yang salah? Saya mencoba menggunakan
Tidak beruntung Tambahan _atau
Saya bahkan mengubah izin pada file tersebut menjadi kontrol penuh untuk semua pengguna. Jika saya memanggil program dari _5, saya dapat melihat ikon muncul di sebelah jam sebentar PHP menyediakan metode exec() untuk mengeksekusi atau menjalankan perintah, program, atau skrip. Metode exec() ini dapat dengan mudah menjalankan perintah eksternal di sistem operasi. Misalnya, perintah whoami dari Linux dapat dijalankan untuk pengguna saat ini, dan nama pengguna yang dikembalikan dapat digunakan dalam aplikasi PHP Sintaks Metode exec()Metode PHP exec() memiliki sintaks berikut _
Metode exec() mengembalikan nilai boolean palsu atau string di mana string adalah baris terakhir dari output Jalankan PerintahKita akan mulai dengan contoh sederhana. Kami menjalankan perintah "whoami" di sistem Linux dan menyimpan hasil atau output dalam variabel bernama $output
Atau kami dapat memberikan perintah yang ingin kami jalankan sebagai variabel string seperti di bawah ini. Pada contoh berikut kita mengatur perintah ke dalam variabel bernama $command
Whoami adalah perintah yang sangat sederhana yang mengembalikan satu item yang merupakan nama pengguna dari pengguna saat ini. Perintah exec() dapat menjalankan perintah berbeda yang mengembalikan hasil yang lebih kompleks. Perintah "ls" mencantumkan file dan folder direktori kerja saat ini
Array ( [0] => a.out [1] => cities.txt [2] => config.ttxt [3] => data1 [4] => data2 [5] => data3 [6] => data4 [7] => data5 ... [40] => text.txt [41] => thinclient_drives [42] => uniqip.txt [43] => userinput.py [44] => usomlist.txt [45] => Videos [46] => while.sh [47] => year ) Kita bisa melihat output yang memiliki total 47 item. Output menyimpan setiap item dengan nomor indeks. Outputnya berisi konten direktori kerja saat ini Jalankan Perintah dengan Opsi dan ParameterMetode exec() dapat digunakan untuk mengeksekusi dan menjalankan perintah dengan opsi dan parameter. Ini adalah cara yang sama di mana opsi dan parameter diatur di dalam string perintah. Dalam contoh berikut, perintah “ls” dijalankan dengan opsi “-l” dan parameter “/etc”. Jalankan Perintah dengan Opsi dan ParameterJalankan Skrip BashMetode exec() juga dapat digunakan untuk mengeksekusi skrip perintah bash dengan mudah. Cukup berikan nama skrip jika terletak di direktori kerja saat ini atau tentukan jalur lengkap untuk mencegah kesalahan Skrip PHP terutama digunakan untuk mengembangkan aplikasi web tetapi juga dapat digunakan untuk tujuan lain. PHP memiliki beberapa fungsi bawaan untuk menjalankan perintah terkait sistem. exec() adalah salah satunya. Ini digunakan untuk menjalankan perintah shell atau program apa pun dari skrip PHP. Bagaimana fungsi ini dapat digunakan dalam PHP ditunjukkan dalam tutorial ini Sintaksisstring exec ( string $command [, array &$output [, int &$return_var ]] ) Fungsi ini dapat mengambil tiga argumen. Argumen pertama adalah wajib yang akan mengambil perintah sistem. Dua argumen lainnya adalah opsional. Argumen kedua digunakan untuk menyimpan output dari perintah dalam sebuah array. Argumen ketiga dari fungsi ini digunakan untuk menyimpan status pengembalian dari perintah yang dieksekusi. Fungsi ini mengembalikan baris terakhir dari output perintah yang dieksekusi Contoh 1. Penggunaan fungsi exec() tanpa argumen opsionalPenggunaan dasar fungsi exec() telah ditunjukkan dalam tutorial ini. Buat file PHP dengan skrip berikut untuk mengetahui bagaimana fungsi exec() mengembalikan output perintah. Perintah 'pwd' telah digunakan dalam perintah exec() pertama dari skrip yang mengembalikan satu baris keluaran. Perintah ‘ls -la‘ telah digunakan dalam perintah exec() kedua yang dapat mengembalikan beberapa baris keluaran. Jika ada perintah yang mengembalikan banyak baris maka output akan menampilkan baris terakhir sebagai output
Keluaran Output berikut akan muncul setelah menjalankan skrip di atas dari server. Perintah 'pwd' mengembalikan direktori kerja saat ini sebagai keluaran yang ditampilkan pada keluaran pertama. Perintah 'ls -la' mengembalikan informasi detail dari daftar direktori dan keluaran kedua menunjukkan baris terakhir dari keluaran perintah Contoh-2. Cetak semua nilai dari perintah yang dieksekusiPada contoh sebelumnya, tidak ada argumen opsional yang digunakan dalam fungsi exec(). Contoh berikut menunjukkan penggunaan argumen opsional dari fungsi exec(). Buat file PHP dengan skrip berikut. Dua argumen opsional exec() digunakan dalam skrip ini. Perintah 'ls -l' digunakan dalam argumen pertama yang mengembalikan daftar direktori. Variabel $output digunakan di sini untuk menyimpan output dari perintah dalam sebuah array. Variabel $status digunakan untuk menyimpan nilai status pengembalian dari perintah yang dieksekusi. Keluaran dari perintah akan dicetak sebagai larik dan setiap nilai larik keluaran akan dicetak dengan menggunakan loop 'untuk'
Keluaran Output berikut akan muncul setelah menjalankan skrip di atas dari server. Output menunjukkan array yang berisi output dari perintah, 'ls -l' dan setiap nilai array di setiap baris Contoh-3. Cetak semua file PHP dari direktori saat iniThe following example shows the list of all PHP files of the current directory by using the exec() function. Here, the ‘ls -l *.php‘ command is used here to find out the list of all PHP files of the current directory. tag is used in the script to print the content of the array with the structured format. |