Dapatkah Anda menjalankan php dari baris perintah?

Menjalankan PHP dari baris perintah Windows dapat sangat berguna saat mencoba mengembangkan skrip khusus dengan cepat, atau untuk membaca dan memodifikasi file lokal. Dalam contoh, kami akan menggunakan iterator PHP khusus

KONFIGURASI DASAR

1. Pertama, Anda perlu mengunduh versi terbaru PHP dan mengekstraknya ke C. \ direktori

Dapatkah Anda menjalankan php dari baris perintah?

 

2. Arahkan ke Control Panel > System and Security > System > Advanced system settings. Di panel variabel Sistem klik, temukan dan edit variabel Path dan tambahkan path ke folder PHP yang Anda ekstrak

C. \[folder php]

Catatan. Gunakan titik koma untuk membatasi antara Variabel Sistem

Dapatkah Anda menjalankan php dari baris perintah?

 

3. Buka CMD dan masukkan PATH. Pastikan Variabel Sistem PHP Anda telah ditambahkan. (Opsional)

Dapatkah Anda menjalankan php dari baris perintah?

 

4. Ketik “cd C. \[nama folder]” di CMD untuk masuk ke direktori PHP Anda. Ganti [nama folder] dengan nama unduhan PHP yang Anda ekstrak

 

5. Ketik "php -v" untuk mengonfirmasi versi sudah benar

Dapatkah Anda menjalankan php dari baris perintah?

 

6. Masukkan “php c. \[direktori]\[folder]\[fungsi php]. php”. Ganti [fungsi php] dengan file Anda

Dapatkah Anda menjalankan php dari baris perintah?

 

COBALAH

Contoh yang diberikan adalah fungsi rekursif yang menelusuri folder dan subfolder direktori file saat ini, menemukan gambar yang memiliki dimensi pada namanya, dan menghapusnya dari direktori

1. Download contoh iterator php dan ekstrak filenya

Dapatkah Anda menjalankan php dari baris perintah?

 

2. Ulangi langkah 6 di atas, ganti folder dan fungsi dengan “php-orionweb\deleteImageSizePhotos. php”

Dapatkah Anda menjalankan php dari baris perintah?

 

3. Ada 24 gambar, 15 di antaranya adalah ukuran gambar WordPress yang memuat dimensi gambar pada nama file. Konfirmasikan keluaran skrip memiliki jumlah file

Dapatkah Anda menjalankan php dari baris perintah?

 

4. Tekan panah atas dan jalankan skrip lagi. Kali ini Anda seharusnya hanya 9 file, yang lainnya telah dihapus

Dapatkah Anda menjalankan php dari baris perintah?

 

RINGKASAN

Skrip PHP khusus adalah bagian dari gudang pengembang yang bagus, tetapi terkadang membuat dan mengujinya dapat menyebabkan masalah jika Anda tidak memiliki akses ke web atau sumber daya yang diperlukan. Menjalankan PHP dari baris perintah adalah alat yang hebat untuk pengembangan web lokal yang cepat sehingga Anda dapat membantu membuat kode portabel tanpa lingkungan server

Kedua cara (apakah menggunakan -f switch atau tidak) mengeksekusi file my_script. php. Perhatikan bahwa tidak ada batasan file mana yang dapat dieksekusi;

  • Lewati kode PHP untuk mengeksekusi langsung pada baris perintah

    $ php -r 'print_r(get_defined_constants());'
    

    Perhatian khusus harus diberikan sehubungan dengan substitusi variabel shell dan penggunaan tanda kutip

    Catatan

    Bacalah contoh dengan cermat. tidak ada tag awal atau akhir. Sakelar -r tidak membutuhkannya, dan menggunakannya akan menyebabkan kesalahan penguraian

  • Berikan kode PHP untuk dieksekusi melalui input standar (stdin)

    Ini memberikan kemampuan yang kuat untuk membuat kode PHP secara dinamis dan mengumpankannya ke biner, seperti yang ditunjukkan dalam contoh (fiksi) ini

    $ some_application | some_filter | php | sort -u > final_output.txt
    
    _

  • Anda tidak dapat menggabungkan salah satu dari ketiga cara tersebut untuk mengeksekusi kode

    Seperti halnya setiap aplikasi shell, biner PHP menerima sejumlah argumen; . Jumlah argumen yang dapat diteruskan ke skrip Anda tidak dibatasi oleh PHP (dan meskipun shell memiliki batasan jumlah karakter yang dapat diteruskan, hal ini secara umum tidak mungkin terkena). Argumen yang diteruskan ke skrip tersedia di array global $argv. Indeks pertama (nol) selalu berisi nama skrip yang dipanggil dari baris perintah. Perhatikan bahwa, jika kode dieksekusi in-line menggunakan saklar baris perintah -r, nilai $argv[0] akan menjadi "Standard input code"; . 2. 0, itu adalah tanda hubung ("-") sebagai gantinya. Hal yang sama berlaku jika kode dijalankan melalui pipa dari

    $ php -r 'print_r(get_defined_constants());'
    
    0

    Variabel global kedua, $argc, berisi jumlah elemen dalam array $argv (bukan jumlah argumen yang diteruskan ke skrip)

    Selama argumen yang akan diteruskan ke skrip tidak dimulai dengan karakter

    $ php -r 'print_r(get_defined_constants());'
    
    1, tidak ada hal khusus yang harus diperhatikan. Meneruskan argumen ke skrip yang dimulai dengan
    $ php -r 'print_r(get_defined_constants());'
    
    1 akan menimbulkan masalah karena penafsir PHP berpikir harus menanganinya sendiri, bahkan sebelum mengeksekusi skrip. Untuk mencegah hal ini, gunakan pemisah daftar argumen
    $ php -r 'print_r(get_defined_constants());'
    
    3. Setelah pemisah ini diuraikan oleh PHP, setiap argumen berikut diteruskan tanpa disentuh ke skrip

    # This will not execute the given code but will show the PHP usage
    $ php -r 'var_dump($argv);' -h
    Usage: php [options] [-f]  [args...]
    [...]
    
    # This will pass the '-h' argument to the script and prevent PHP from showing its usage
    $ php -r 'var_dump($argv);' -- -h
    array(2) {
      [0]=>
      string(1) "-"
      [1]=>
      string(2) "-h"
    }
    
    _

    Namun, pada sistem Unix ada cara lain menggunakan PHP untuk skrip shell. buat baris pertama skrip dimulai dengan

    $ php -r 'print_r(get_defined_constants());'
    
    4 (atau apa pun jalur ke biner PHP CLI Anda jika berbeda). File lainnya harus berisi kode PHP normal di dalam tag awal dan akhir PHP yang biasa. Setelah atribut eksekusi file diatur dengan tepat (mis. g. chmod +x test), skrip dapat dijalankan seperti skrip shell atau perl lainnya

    Contoh #1 Jalankan skrip PHP sebagai skrip shell

    $ php -r 'print_r(get_defined_constants());'
    
    5

    Dengan asumsi file ini bernama test di direktori saat ini, sekarang dimungkinkan untuk melakukan hal berikut

    $ chmod +x test
    $ ./test -h -- foo
    array(4) {
      [0]=>
      string(6) "./test"
      [1]=>
      string(2) "-h"
      [2]=>
      string(2) "--"
      [3]=>
      string(3) "foo"
    }
    
    _

    Seperti yang dapat dilihat, dalam hal ini tidak ada perhatian khusus yang perlu diberikan saat meneruskan parameter yang dimulai dengan

    $ php -r 'print_r(get_defined_constants());'
    
    1

    Eksekusi PHP dapat digunakan untuk menjalankan skrip PHP yang benar-benar independen dari server web. Pada sistem Unix, baris pertama khusus

    $ php -r 'print_r(get_defined_constants());'
    
    _7 (atau "shebang") harus ditambahkan ke skrip PHP sehingga sistem dapat secara otomatis menentukan program mana yang harus menjalankan skrip. Pada platform Windows, dimungkinkan untuk mengasosiasikan php. exe dengan opsi klik ganda ekstensi .php, atau file batch dapat dibuat untuk menjalankan skrip melalui PHP. Baris pertama shebang khusus untuk Unix tidak membahayakan Windows (karena diformat sebagai komentar PHP), sehingga program lintas platform dapat ditulis dengan menyertakannya. Contoh sederhana penulisan program baris perintah PHP ditunjukkan di bawah ini

    Contoh #2 Skrip dimaksudkan untuk dijalankan dari baris perintah (script. php)

    $ php -r 'print_r(get_defined_constants());'
    
    _9

    $ some_application | some_filter | php | sort -u > final_output.txt
    
    _0

    $ some_application | some_filter | php | sort -u > final_output.txt
    
    _1

    $ some_application | some_filter | php | sort -u > final_output.txt
    
    _2

    $ some_application | some_filter | php | sort -u > final_output.txt
    
    _3

    $ some_application | some_filter | php | sort -u > final_output.txt
    
    _4

    Skrip di atas menyertakan baris pertama Unix shebang untuk menunjukkan bahwa file ini harus dijalankan oleh PHP. Kami bekerja dengan versi CLI di sini, jadi tidak ada header HTTP yang akan ditampilkan

    Program pertama-tama memeriksa apakah ada satu argumen yang diperlukan (selain nama skrip, yang juga dihitung). Jika tidak, atau jika argumennya adalah --help, -help, -h atau -?, pesan bantuan akan dicetak, menggunakan $argv[0] untuk secara dinamis mencetak nama skrip seperti yang diketik pada baris perintah. Jika tidak, argumen akan digaungkan persis seperti yang diterima

    Untuk menjalankan skrip di atas pada Unix, itu harus dibuat dapat dieksekusi, dan disebut hanya sebagai skrip. php echothis atau skrip. php -h. Di Windows, file batch yang mirip dengan berikut ini dapat dibuat untuk tugas ini

    Contoh #3 File batch untuk menjalankan skrip PHP baris perintah (script. kelelawar)

    @echo OFF
    "C:\php\php.exe" script.php %*

    Anggaplah program di atas bernama script. php, dan CLI php. exe ada di C. \php\php. exe, file batch ini akan menjalankannya, meneruskan semua opsi yang ditambahkan. naskah. bat echothis atau skrip. mandi

    Lihat juga dokumentasi ekstensi Readline untuk lebih banyak fungsi yang dapat digunakan untuk menyempurnakan aplikasi baris perintah di PHP

    Di Windows, PHP dapat dikonfigurasi untuk berjalan tanpa perlu memasok C. \php\php. exe atau ekstensi .php_, seperti yang dijelaskan di Command Line PHP di Microsoft Windows

    Catatan

    Di Windows disarankan untuk menjalankan PHP di bawah akun pengguna yang sebenarnya. Saat berjalan di bawah layanan jaringan operasi tertentu akan gagal, karena "Tidak ada pemetaan antara nama akun dan ID keamanan yang dilakukan"

    Bisakah Anda menjalankan file PHP dari baris perintah?

    php. Perhatikan bahwa tidak ada batasan file mana yang dapat dieksekusi; . ekstensi php. Meneruskan kode PHP untuk mengeksekusi langsung pada baris perintah .

    Bagaimana cara menginstal PHP di command prompt?

    Unduh PHP7. 2. 28
    Buka zip dan ganti nama folder menjadi PHP
    Pindahkan folder PHP ke C. /
    Tambahkan Variabel Lingkungan baru untuk PHP
    Nyalakan kembali komputer
    Uji PHP pada terminal/command prompt

    Apa yang bisa digunakan PHP untuk baris perintah?

    Terkadang skrip PHP dapat digunakan selain dari aplikasi web biasa seperti pengiriman email otomatis, tugas Cron untuk membuat cadangan, pelacakan log otomatis and etc. PHP supports CLI SAPI(Command Line Interface Server API) for executing the script from the command line.

    Bagaimana saya bisa menjalankan file PHP saya?

    Sekarang, untuk menjalankan skrip PHP. .
    Pergi ke “C. \xampp\htdocs” dan di dalamnya, buat folder. .
    Di dalam folder demo, buat file teks baru dan beri nama “index. .
    Sekarang, untuk melihat keluaran skrip, buka panel kontrol XAMPP dan mulai Apache untuk menghosting server web lokal, tempat skrip kami akan berjalan