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

解決 PHP Startup: Unable to load dynamic library 錯誤

     編輯:PHP 相關知識

PHP 啟動時提示「Unable to load dynamic library」通常意味著擴展 DLL 加載失敗,導致 mysql_connect() 等函數未定義。本文分析原因並提供 Windows 環境下的兩種修復方案。

錯誤現象

PHP Warning: PHP Startup: Unable to load dynamic library
'D:\myserver\php\ext\php_mysql.dll' - 找不到指定的模組
PHP Fatal error: Call to undefined function mysql_connect()

根因分析

  • PHP 找不到 php_mysql.dll / php_mysqli.dll
  • 依賴庫 libmysql.dll / php5ts.dll 不在系統路徑中
  • Windows 環境變量 PATH 未包含 PHP 目錄

方案一:配置系統環境變量(推薦)

  1. 右鍵「此電腦」→ 屬性 → 高級系統設置 → 環境變量
  2. 系統變量中找到 Path,編輯
  3. 添加 PHP 安裝目錄(如 D:\myserver\php)
  4. 重啟 Apache/IIS 服務

方案二:複製依賴庫到系統目錄(快速修復)

將 PHP 目錄下的核心 DLL 複製到系統路徑:

  • Windows NT/2000:複製到 C:\WINNT\system32
  • Windows XP/2003/7/10/11:複製到 C:\Windows\system32

需複製文件:

php5ts.dll
libmysql.dll
php_mysql.dll
php_mysqli.dll

驗證修復

<?php
$cn = mysql_connect("localhost", "用戶名", "密碼") or die(mysql_error());
if ($cn) {
    echo "連接成功";
    phpinfo();
} else {
    echo "連接失敗";
}
?>

現代化建議

  • 棄用 mysql_*:PHP 7.0+ 已移除,改用 mysqli 或 PDO_MySQL
  • 使用 PHP 內置服務器開發:php -S localhost:8000 避免環境配置
  • 容器化部署:Docker 統一運行環境,消除「在我機器上正常」問題

解決 DLL 加載問題的核心在於:確保 PHP 進程能找到所有依賴庫。環境變量法更規範,複製法更快速,根據場景選擇。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved