首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PEAR (PHP Extension and Application Repository) 完整指南:安裝、包管理與常用組件推薦

     編輯:PHP 相關知識

PEAR 是 PHP 官方維護的「標準庫與組件倉庫」,提供可復用代碼包、編碼規範、分發渠道。雖然 Composer 成為現代主流,但 PEAR 仍在大量存量項目、系統級工具、舊版 PHP 環境中廣泛使用。

核心使命

  • 提供高質量、可復用 PHP 組件
  • 制定 PHP 編碼標準 (PEAR Coding Standards → PSR-1/2 前身)
  • 統一包分發、版本管理、依賴解析流程

安裝與驗證

# PHP 安裝時通常自帶 pear 命令 (bin/pear)
pear version
# PEAR Version: 1.10.x
# PHP Version: 8.x
# Zend Engine Version: 4.x

# 檢查 PHP include_path 包含 PEAR 目錄
pear config-get php_dir
# /usr/local/lib/php (Linux) 或 D:\AppServ\php8\pear (Windows)

常用命令速查表

命令作用示例
pear install <pkg>安裝包pear install Log
pear uninstall <pkg>卸載包pear uninstall Log
pear upgrade <pkg>升級包pear upgrade-all
pear list列出本地已安裝包
pear remote-list列出遠程可用包
pear info <pkg>查看包詳情pear info Log
pear config-show顯示所有配置
pear help <cmd>命令幫助pear help install

實戰:安裝與使用 Log 包

# 1. 安裝
pear install Log

# 2. 目錄結構生成
# php_dir/Log.php           # 主入口
# php_dir/Log/              # 子類 (file, syslog, mail, sqlite, ...)
# doc_dir/Log/              # 文檔、示例

# 3. 代碼中使用
require_once 'Log.php';

$logger = Log::singleton('file', '/var/log/myapp.log', 'MyApp');
$logger->log('Info message', PEAR_LOG_INFO);
$logger->log('Error: DB connection failed', PEAR_LOG_ERR);

// 或使用工廠模式
$logger = &Log::factory('syslog', 'MyApp', 'LOG_USER');
$logger->log('System log entry', PEAR_LOG_NOTICE);

PEAR vs Composer 選型建議

推薦常用 PEAR 包 (歷史經典)

  • PHPUnit:單元測試框架鼻祖 (現已遷移 Composer)
  • PHPDoc:文檔生成工具 (現主流用 phpDocumentor)
  • DB / MDB2:資料庫抽象層 (現主流用 PDO/Doctrine DBAL)
  • Log:日誌抽象 (現主流用 Monolog)
  • HTTP_Request2:HTTP 客戶端 (現主流用 Guzzle)
  • Mail / Mail_Mime:郵件構建發送 (現主流用 Symfony Mailer)
  • Cache / Cache_Lite:緩存抽象 (現主流用 Symfony Cache / Stash)
  • Config:配置文件解析 (INI/XML/PHP/JSON)
  • Validate:數據驗證 (Email/URL/信用卡/身份證等)

遷移建議

新項目 直接使用 Composer。存量 PEAR 項目可通過 composer require pear/pear_package (部分包在 Packagist 有鏡像) 或手動將 php_dir 加入 include_path 並編寫 PSR-4 映射過渡。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
維度PEARComposer
安裝範圍系統級/全局項目級 (vendor/)
依賴解析簡單、扁平強大、遞歸、版本約束
自動加載需手動 require / include_pathPSR-4 自動生成 autoload.php
包發布門檻官方審核、流程嚴格Packagist 開放提交
現代項目適用性低 (維護模式)高 (事實標準)