PHP Conference Japan 2024

Git 存取

如果您想取得最新的 PHP 原始碼樹,您可以透過 Git 取得。您應該注意,Git 版本是開發版本,因此通常不穩定,甚至可能無法正確編譯。然而,使用 Git 的好處是您可以取得最新的修正和更新,而無需等待官方版本。

PHP 使用進階的設定系統,需要您具備以下工具。 re2c 僅開發人員需要,可以在這裡找到。所有其他工具都可以從GNU FTP 網站取得。

如果您遇到問題,也請參閱buildconf 失敗的章節。

從 Git 使用 PHP 的步驟

  1. 您可以使用以下命令從我們的 GitHub 擷取 PHP 原始碼

    git clone https://github.com/php/php-src.git

    您也可以從 GitHub 下載快照

    • 前往 php-src 專案頁面
    • 從分支下拉選單中選擇您感興趣的分支。
    • 點擊下載 ZIP 按鈕。
  2. 請確認您位於正確的目錄來操作 PHP

    cd php-src

  3. 接著您可以切換到您想要建置的分支,例如:

    PHP 7.4: git checkout PHP-7.4
    PHP 8.0: git checkout PHP-8.0
    PHP 8.1: git checkout PHP-8.1
    PHP 8.2: git checkout PHP-8.2
    PHP HEAD: git checkout master

  4. 請注意,某些 autoconf 和 libtool 的組合可能無法一起使用,尤其是在較舊版本的 PHP 中。詳情請見下方說明
    此外,某些版本的 autoconf 可能會產生 AC_PROG_CPP called before AC_PROG_CC 的警告訊息。這些訊息通常可以忽略。

  5. 執行 ./buildconf 來產生 configure 腳本。這可能需要一些時間。
  6. 從這裡開始,安裝過程與安裝官方套件的過程類似,主要區別在於您需要一個與您要建置的 PHP 版本相容的 bison 版本。如果您打算修改 PHP 使用的任何掃描器和解析器檔案,您可能還需要 re2c。

還有許多其他資源,例如文件用的 XML 原始碼,都可以透過 Git 取得。請參閱基於網頁的 Git 伺服器檢視,以查看可用的資源。

PHP Wiki 有一個很有用的Git 常見問題,其中提供了使用 PHP Git 儲存庫的實用技巧和速查表。如果您想參與 PHP 的開發,Git 工作流程頁面也可能會讓您感興趣。

PHP 手冊

PHP 手冊託管在 Git 上。要 checkout 最新英文版的 PHP 手冊:
git clone https://github.com/php/doc-en.git ./phpdoc-en

歷史問題

PHP 5.3 及以下版本的 autoconf 和 libtool 資訊

libtool 1.4.2 似乎有一些問題。建議您使用 libtool 1.4,以及 autoconf 2.13 和 automake 1.4。您還應確保 autoconf、automake 和 libtool 安裝在同一個目錄中。libtool 1.5 無法使用。

已知以下組合可與 PHP 5.3 及以下版本搭配使用:

自 PHP 4.3 起,建置 PHP 不再需要 automake 及其 aclocal 程式。

如果您的電腦上安裝了多個版本的 autoconf(這在許多 UNIX 系統中很常見),您可以在執行 buildconf 時設定 PHP_AUTOCONF 和 PHP_AUTOHEADER 變數,以指定要使用的版本,例如:
PHP_AUTOCONF=autoconf213 PHP_AUTOHEADER=autoheader213 ./buildconf

Zend/zend_language_scanner.c: 找不到此類檔案或目錄

PHP 只支援 flex 2.5.4,不支援後續版本,因為它們破壞了向下相容性。請注意,PHP 5.3 及更高版本根本不需要 flex。

To Top