簡體   English   中英

如何在Windows機器上從命令提示符運行PHP程序?

[英]How to run a PHP program from command prompt on a Windows Machine?

我是專業的PHP開發人員。

我正在使用在Windows 10 Home Single Language 64位操作系統上運行的Lenovo Ideapad筆記本電腦

我還在位置“C:\\ xampp”安裝了XAMPP控制面板v3.2.2 ,以便在我的機器上的Web瀏覽器中執行PHP程序

“php.exe”文件出現在“C:\\ xampp \\ php”位置

保存PHP文件的文檔根目錄位於“C:\\ xampp \\ htdocs”位置

通過啟動XAMPP軟件(通過雙擊桌面上的XAMPP快捷方式)並輸入程序文件的URL,我可以運行我創建並保存在目錄C:\\ xampp \\ htdocs \\ html_playground中的PHP程序像瀏覽器地址欄中的http://localhost/html_playground/sample.php

這樣我就可以很好地運行PHP程序,但我想從Windows命令提示符運行相同的程序

為此,我完成了以下步驟:

  • 去了高級系統設置 (控制面板\\系統和安全\\系統\\高級系統設置)
  • 然后單擊Environment Variables
  • 然后選擇變量Path
  • 然后單擊編輯...按鈕
  • 然后在現有字符串的結束分號后,我通過在分號后面添加一個空格來添加字符串“C:\\ xampp \\ php”

最后的新字符串如下所示:

%USERPROFILE%\\應用程序數據\\本地\\微軟\\ WindowsApps; C:\\ XAMPP \\ PHP

  • 然后點擊確定
  • 打開命令提示符
  • 使用cd命令在命令提示符下找到路徑C:\\ xampp \\ htdocs \\ html_playground
  • 輸入sample.php (包含我的PHP程序的文件)

然后它沒有顯示程序的輸出,而是在Sublime Text中打開了相同的文件(我用來編寫代碼的編輯器)

sample.php文件包含以下PHP可執行代碼

<?php 
   echo 'Hello World!';
?>

作為參考,我還附上了命令提示符窗口的屏幕截圖:

命令提示符窗口

現在我的問題是

  • 為什么我無法在命令提示符或Web瀏覽器中看到輸出?
  • 我在做什么錯誤或什么?
  • 是否有必要像往常一樣啟動XAMPP服務器,以便在Web瀏覽器中運行程序,以便從命令提示符執行程序?
  • 我在設置環境變量時是否犯了錯誤?
  • 是否真的需要設置環境變量? 如果是,為什么? 如果沒有原因?
  • 由於PHP應該是適合Web開發的語言,因此我認為在Web開發人員的軟件(即Web瀏覽器)中運行該程序總是好的。 但我不明白為什么人們堅持從命令行運行PHP程序而不是僅從Web瀏覽器運行相同的程序?

請有人通過回答我的疑問並幫助我從命令提示符運行程序來幫助我。

即使我嘗試重新啟動PC並運行php -v命令,但它也沒有用完。 以下是相同的屏幕截圖:

系統重啟后命令提示輸出

如果您想運行CLI PHP,我強烈建議您安裝在windows.php.net上找到的vanilla PHP。 讓它安裝到C:\\php我推薦這個的原因是,如果你想使用Composer (並且你很想有機會),它會在那里找到它。

現在,您可以打開命令提示符並運行如下腳本

C:\php\php.exe C:\path\to\php\script.php

根據您的具體情況

  1. Why I'm not able to see the output at command prompt or a web browser? 因為輸出被發送到命令行。 瀏覽器請求通過Web服務器發送到瀏覽器
  2. Is it necessary to start the XAMPP server like I normally do to run the program from command prompt too? 對於CLI請求,沒有。 PHP是一個可執行文件,可以自行運行。 如果你想做瀏覽器請求,那么XAMPP需要運行。
  3. Is there really a need to set environment variables? If yes why? If no why? 並不是的。 CLI只關注php.ini XAMPP配置主要用於Apache。
  4. But I'm not understanding the reason why people do insist for running the PHP programs from Command Line的原因主要原因是自動化任務。 我在cron工作上運行的工作有幾個。

Windows 10中可變路徑的分步指南


更新:

跳過通過左鍵單擊 Windows開始按鈕第4步,然后立即鍵入system env ,Windows搜索會建議Edit the system environment variables ,點擊此圖標,並轉到步驟4。


  1. 右鍵單擊Windows開始按鈕,選擇系統

右鍵單擊Windows開始按鈕>系統

  1. 單擊“ 系統信息”

單擊“系統信息”

  1. 單擊“ 高級系統設置”

單擊“高級系統設置”

  1. 單擊Environment Variables

單擊Environment Variables

  1. System Variables標題下選擇PATH ,然后單擊Edit

在“系統變量”下,單擊“路徑”,然后單擊“編輯”

  1. 單擊“ 新建” ,鍵入可執行文件的路徑位置

單擊新建,將路徑位置添加到可執行文件

  1. OK鍵, 應用在所有應用面板然后重新啟動計算機

在此輸入圖像描述

步驟1:右鍵單擊桌面上的“計算機”圖標,然后選擇“屬性”選項。

步驟2:在“系統”窗口中,單擊左窗格中的“高級系統設置”

步驟3:在System Properties窗口中,從頂部的水平菜單中選擇Advanced選項卡,然后單擊窗口底部給出的Environment Variables按鈕

步驟4:在下一個窗口中調用Environment Variables,轉到System變量(第二個網格)並找到名為Path的變量,然后單擊Edit。 如果Path變量不存在,則單擊“新建”。

如果您正在編輯,則在要添加到單獨變量的路徑之前附加分號。

第5步:獲取已安裝XAMPP的php路徑。 在出現的小對話框中將此路徑添加到變量值。

第6步:按“確定”並關閉所有窗口。

步驟7:使用cmd打開命令提示符。

步驟8: cd到your_install_path / xampp / htdocs

第9步:輸入命令'php -i | 更多'

第10步:沒有第10步。

由於您已經安裝了XAMPP因此您可以從XAMPP控制面板v3.2.2SHELL窗口運行PHP

在此輸入圖像描述

在我的測試用例中,我在目錄c:\\xampp\\htdocs\\tester使用了一個小文件index.phpindex.php的內容是:

echo "This is output from command line "."\n";
if(!empty($argv)) {
foreach($argv as $key => $arg) {
if($key>0) {
echo "command line argument ".$key ." ". $arg."\n";
}
}
}

只需在命令行窗口中鍵入以下內容即可。

php C:\xampp\htdocs\tester\index.php var1=1 var2="lorem ipsum..."

產量

在此輸入圖像描述

您可以使用-S標志在瀏覽中看到php代碼輸出:

php -S <host/ip>:<port>

要測試它,請創建一個sample.php文件,其中包含:

<?php
echo "Hello World from built-in PHP server";
?>

並從命令行運行命令php -S localhost:8080不包括http:// )。

這將使用您作為文檔根目錄的當前目錄啟動偵聽端口8080的Web服務器。

打開瀏覽器並導航到http:// localhost:8080 你應該看到你的'Hello World'頁面。

注意:我的假設是你在sample.php所在的目錄中。 如果萬一port:8080已在使用,你可以使用任何其他端口像808000

在與php.exe相同的目錄中打開命令提示符,並使用您要處理的文件的參數調用該程序。

C:\\xampp\\php\\php.exe C:\\xamp\\htdocs\\html_playground\\test.php

如果包含test.php; <?php echo "Hello World"; ?> <?php echo "Hello World"; ?>然后命令提示符將輸出'Hello World'並返回標准CMD CLI用戶輸入。

你的>php調用無法工作的原因很可能是由於你的PATH環境變量不包含PHP的正確位置,編輯你的系統變量並添加'C:\\ xampp \\ php \\;' 進入PATH字符串。 這應該允許您調用php C:\\xamp\\htdocs\\html_playground\\test.php獲取與上面相同的輸出。

簡單,簡短,完美的答案。 嘗試至少一次你會獲得成功:)

打開C:\\ xampp \\ php(或者您的路徑可能會有所不同取決於您安裝它的位置)

現在運行PHP.exe

現在只需遵循這種類型

php -a 

然后開始編寫代碼

例如

<?php 
echo "Hello, world!"; 
?> 

然后按CTRL + Z,然后按Enter鍵

你好,世界! //輸出

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM