Cara menggunakan jendela shell php

This posting is not a php-only problem, but hopefully will save someone a few hours of headaches.  Running on MacOS (although this could happen on any *nix I suppose), I was unable to get the script to execute without specifically envoking php from the command line:

[macg4:valencia/jobs] tim% test.php
./test.php: Command not found._

However, it worked just fine when php was envoked on the command line:_

[macg4:valencia/jobs] tim% php test.php
Well, here we are...  Now what?

Was file access mode set for executable?  Yup.

[macg4:valencia/jobs] tim% ls -l
total 16
-rwxr-xr-x  1 tim  staff   242 Feb 24 17:23 test.php

And you did, of course, remember to add the php command as the first line of your script, yeah?  Of course.

#!/usr/bin/php

So why dudn't it work?  Well, like I said.. on a Mac... but I also occasionally edit the files on my Windows portable (i.e. when I'm travelling and don't have my trusty Mac available)...  Using, say, WordPad on Windows.. and BBEdit on the Mac...

Aaahhh.. in BBEdit check how the file is being saved!  Mac?  Unix?  or Dos?  Bingo.  It had been saved as Dos format.  Change it to Unix:

[macg4:valencia/jobs] tim% test.php
./test.php: Command not found._0

[macg4:valencia/jobs] tim% test.php
./test.php: Command not found._1

Bagian ini berisi catatan dan petunjuk khusus untuk menjalankan PHP dari baris perintah untuk Windows

Catatan

Anda harus membaca langkah-langkah instalasi manual terlebih dahulu

Menjalankan PHP dari baris perintah dapat dilakukan tanpa membuat perubahan apa pun pada Windows

C:\php\php.exe -f "C:\PHP Scripts\script.php" -- -arg1 -arg2 -arg3

Namun ada beberapa langkah mudah yang bisa diikuti untuk membuatnya lebih sederhana. Beberapa dari langkah-langkah ini seharusnya sudah dilakukan, tetapi diulangi di sini agar dapat memberikan urutan langkah demi langkah yang lengkap

    Catatan

    Baik PATH dan PATHEXT adalah variabel sistem penting yang sudah ada sebelumnya di Windows, dan kehati-hatian harus dilakukan untuk tidak menimpa salah satu variabel, hanya untuk menambahkannya.

  • Tambahkan lokasi executable PHP (php. exe, php-win. exe atau php-cli. exe tergantung pada versi PHP Anda dan preferensi tampilan) ke variabel lingkungan PATH. Baca lebih lanjut tentang cara menambahkan direktori PHP Anda ke PATH di

  • Tambahkan ekstensi .PHP ke variabel lingkungan PATHEXT. Ini dapat dilakukan bersamaan dengan mengubah variabel lingkungan PATH. Ikuti langkah-langkah yang sama seperti yang dijelaskan di tetapi ubah variabel lingkungan PATHEXT daripada variabel lingkungan PATH

    Catatan

    Posisi di mana Anda menempatkan .PHP akan menentukan skrip atau program mana yang dijalankan ketika ada nama file yang cocok. Misalnya, menempatkan .PHP_ sebelum ftype phpfile="C:\php\php.exe" -f "%1" -- %~2 0 akan menyebabkan skrip Anda berjalan, bukan file batch, jika ada file batch dengan nama yang sama

  • Kaitkan ekstensi .PHP dengan jenis file. Ini dilakukan dengan menjalankan perintah berikut

  • Kaitkan jenis file ftype phpfile="C:\php\php.exe" -f "%1" -- %~2 _2 dengan PHP yang dapat dieksekusi yang sesuai. Ini dilakukan dengan menjalankan perintah berikut

    ftype phpfile="C:\php\php.exe" -f "%1" -- %~2 _

Mengikuti langkah-langkah ini akan memungkinkan skrip PHP dijalankan dari direktori mana pun tanpa perlu mengetik PHP yang dapat dieksekusi atau ekstensi .PHP dan semua parameter akan diberikan ke skrip untuk diproses

Contoh di bawah merinci beberapa perubahan registri yang dapat dilakukan secara manual

Contoh #1 Perubahan registri

Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.php] @="phpfile" "Content Type"="application/php" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\phpfile] @="PHP Script" "EditFlags"=dword:00000000 "BrowserFlags"=dword:00000008 "AlwaysShowExt"="" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\phpfile\DefaultIcon] @="C:\\php\\php-win.exe,0" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\phpfile\shell] @="Open" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\phpfile\shell\Open] @="&Open" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\phpfile\shell\Open\command] @="\"C:\\php\\php.exe\" -f \"%1\" -- %~2" _

Dengan perubahan ini, perintah yang sama dapat ditulis sebagai

"C:\PHP Scripts\script" -arg1 -arg2 -arg3

atau, jika jalur ftype phpfile="C:\php\php.exe" -f "%1" -- %~2 _4 Anda ada di variabel lingkungan PATH

Catatan

Ada sedikit masalah jika Anda berniat menggunakan teknik ini dan menggunakan skrip PHP Anda sebagai filter baris perintah, seperti contoh di bawah ini

Apa gunanya perintah PHP V dijalankan di command prompt?

Perintah - v sendiri berfungsi untuk menampilkan versi PHP . Jika terlihat versi PHP seperti gambar di atas, berarti file php . exe dapat diakses secara global.

Apa itu baris perintah php?

PHP CLI ( Baris Perintah Antarmuka) adalah PHP yang berjalan di Command Line . PHP CLI memungkinkan kita mengembangkan aplikasi shell dengan PHP . PHP CLI pertama kali diperkenalkan di PHP versi 4. 2. 0 sebagai percobaan (percobaan). Salah satu contoh aplikasi shell yang berjalan di Command Line adalah Composer.

Postingan terbaru

LIHAT SEMUA