從命令列執行 PHP 檔案

Olorunfemi Akinlua 2023年1月30日 2022年7月18日
  1. PHP 安裝
  2. 以互動方式執行 PHP
  3. 解析 PHP 檔案
  4. 執行一行程式碼
從命令列執行 PHP 檔案

準確地說,我們通常在 Web 伺服器上執行 PHP。畢竟,PHP 是一種伺服器端語言。

但是,它也是一種指令碼語言,你可以在 shell 或命令列上執行。有了它,你可以像執行 Python 或典型的 Git 或 Bash 命令一樣互動式地執行 PHP。

本教程將教你如何使用一些命令從命令列輕鬆執行 PHP。

PHP 安裝

在本地 PC 上執行 PHP 之前,你需要安裝 PHP。為此,對於 Windows 使用者,你將訪問 PHP 的網站,對於 Mac 使用者,你將訪問本文,對於 Linux 使用者,你將訪問此安裝指南

對於 Windows 使用者,你可以提取下載的檔案,將其複製到 C:\php,將其新增到環境變數路徑,然後使用以下命令檢查 PHP 版本以確定完整的配置。

php -v

一旦你看到一個版本,你就可以通過你的命令列開始執行 PHP。此外,你可以在你的伺服器或雲上執行你的 PHP。

以互動方式執行 PHP

php -a

該命令在 shell 或 CLI 中的輸出如下所示。

> php -a
Interactive mode enabled

然後,你可以像下面一樣執行 PHP 語句。

php > echo "This is the PHP interpreter";
This is the PHP interpreter

解析 PHP 檔案

要使用你的程式碼解析現有的 PHP 檔案,你需要位於 PHP 檔案的工作目錄中。pwd 命令有助於檢查你所在的工作目錄。

pwd

在 Windows 上,它應該為你提供如下所示的內容。

Path
----
cd C:\Users\HP\Documents

你應該在 Unix (macOS) 和 Linux 上看到類似的內容。

/home/runner/ProudScientificMemorypool

如果你不在正確的目錄中,你可以使用 cd 命令導航到正確的目錄。

cd C:\Users\HP\Documents

你可以閱讀有關在 WindowsMacOSLinux 上導航命令列介面的更多資訊。

一旦你確定你位於 PHP 檔案的正確目錄中,你就可以通過以下命令解析(執行)PHP 檔案。

php -f main.php

或者你可以使用:

php main.php

你可以通過以下命令將 PHP 檔案中的程式碼結果匯出到 txthtml

php -f main.php > results.html

但是,假設 PHP 程式碼確實有一個 readline() 函式作為教程中關於如何計算 PHP 中連續數字集的平均值 的程式碼。在這種情況下,你可能會遇到奇怪的行為,例如看不到提示。

將結果從終端匯出到 html 檔案

因此,瞭解你正在解析的 PHP 程式碼非常重要。輸出 results.html 在 HTML 檔案中如下所示。

Adding numbers repeatedly to get the average at all the intervals
If you want to terminate the program, type 000

Current average is 123

Current average is 178.5

Current average is 234

Current average is 289.5

Current average is 345

Current average is 400.5

Current average is 456

Current average is 510.25

Current average is 553.66666666667

Average of all the numbers (9) is 553.66666666667.

執行一行程式碼

要僅執行一小部分/一行程式碼,你可以使用:

php -r '$statement = "I know PHP"; echo "$statement\n";'

輸出:

I know PHP
Olorunfemi Akinlua avatar Olorunfemi Akinlua avatar

Olorunfemi is a lover of technology and computers. In addition, I write technology and coding content for developers and hobbyists. When not working, I learn to design, among other things.

LinkedIn