Home Backend Development PHP Problem What should I do if php cannot load the dynamic library?

What should I do if php cannot load the dynamic library?

Jul 23, 2020 am 11:02 AM
php dynamic library

Solution to the problem that php cannot load the dynamic library: 1. Copy "libmySQL.dll" in the PHP integration package to the system32 directory; 2. Add the PHP decompression directory to PATH; 3. In Apache's configuration file uses loadfile to load some dynamic link libraries.

What should I do if php cannot load the dynamic library?

php failed to load dynamic library

PHP’s integration package comes with a lot of dynamic link libraries, but when we After configuring according to the instructions, I ran phpinfo() and found that many templates were not loaded. Although we have removed the comment (;) in front of the corresponding link library in php.ini.

I discovered a very interesting thing when configuring WAMP: sometimes the mysql module can be loaded, and sometimes it cannot be loaded. After careful study, I found that when mysql can be loaded, it uses installation files, and when it cannot be loaded, mysql uses mostly compressed packages. What is the difference between the two cities?

The difference is that during the installation of the installation package, you can choose to add the mysql installation directory (./MySQL*.*/bin) to the PATH.

What effect will this have? It turns out that there is a file in this directory with the same name as the PHP integration package - libmySQL.dll.

Searching the Internet, I found that there are other solutions:

Copy libmySQL.dll in the PHP integration package to the system32 directory - this directory is usually in the PATH;

Another way that does not require changing PATH is to add a sentence to the Apache configuration file: [loadfile X:/*/libmySQL.dll] uses an absolute path.

The root of the problem seems to have been found. Can other modules also solve it in this way?

The answer is yes, yes.

The easiest way is to add the PHP decompression directory (usually including libmysql.dll, php.exe, etc.) to PATH;

Then restart the system - just restarting apache will not work , when you check the PATH parameter of "Apache Environment" in phpinfo(), you will find that the "PATH" item has not changed at all. If you can change the application without restarting the system, I don't know yet. Who knows, please tell me.

Another way to avoid changing PATH and restarting the system is to use loadfile in the Apache configuration file to load some dynamic link libraries.

After testing, I have listed the modules I know and the dynamic link libraries to be loaded:

  PHP模块      运行时要加载的动态链接库
  ------------------------------------------------------------
  php_fdf.dll                ->fdftk.dll
  php_interbase.dll      ->gds32.dll
  php_pdo_firebird.dll ->gds32.dll
  php_curl.dll               ->ssleay32.dll
  php_ldap.dll             ->ssleay32.dll
  php_openssl.dll        ->ssleay32.dll
  php_mcrypt.dll         ->libmcrypt.dll
  php_mhash.dll         ->libmhash.dll
  php_msql.dll           ->msql.dll
  php_mssql.dll           ->ntwdblib.dll
  php_pdo_mssql.dll   ->ntwdblib.dll
  php_mysql.dll           ->libmysql.dll
  php_mysqli.dll          ->libmysql.dll
  php_pdo_mysql.dll   ->libmysql.dll
Copy after login

The dynamic link libraries to be loaded are all located in the integrated package decompression directory of PHP (usually Including libmysql.dll, php.exe, etc.). There are also three files in this directory: fribidi.dll, libeay32.dll and libswish-e.dll. I don't know what they are used for yet. As for the name and function of each module, I won't go into details.

Recommended: "PHP Tutorial"

Note: This method is suitable for php5.1.X, php5.2.X series, php.4X has not been tested.

The above is the detailed content of What should I do if php cannot load the dynamic library?. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Roblox: Bubble Gum Simulator Infinity - How To Get And Use Royal Keys
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusion System, Explained
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers Of The Witch Tree - How To Unlock The Grappling Hook
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1677
14
PHP Tutorial
1280
29
C# Tutorial
1257
24
What happens if session_start() is called multiple times? What happens if session_start() is called multiple times? Apr 25, 2025 am 12:06 AM

Multiple calls to session_start() will result in warning messages and possible data overwrites. 1) PHP will issue a warning, prompting that the session has been started. 2) It may cause unexpected overwriting of session data. 3) Use session_status() to check the session status to avoid repeated calls.

Composer: Aiding PHP Development Through AI Composer: Aiding PHP Development Through AI Apr 29, 2025 am 12:27 AM

AI can help optimize the use of Composer. Specific methods include: 1. Dependency management optimization: AI analyzes dependencies, recommends the best version combination, and reduces conflicts. 2. Automated code generation: AI generates composer.json files that conform to best practices. 3. Improve code quality: AI detects potential problems, provides optimization suggestions, and improves code quality. These methods are implemented through machine learning and natural language processing technologies to help developers improve efficiency and code quality.

What is the significance of the session_start() function? What is the significance of the session_start() function? May 03, 2025 am 12:18 AM

session_start()iscrucialinPHPformanagingusersessions.1)Itinitiatesanewsessionifnoneexists,2)resumesanexistingsession,and3)setsasessioncookieforcontinuityacrossrequests,enablingapplicationslikeuserauthenticationandpersonalizedcontent.

How to use MySQL functions for data processing and calculation How to use MySQL functions for data processing and calculation Apr 29, 2025 pm 04:21 PM

MySQL functions can be used for data processing and calculation. 1. Basic usage includes string processing, date calculation and mathematical operations. 2. Advanced usage involves combining multiple functions to implement complex operations. 3. Performance optimization requires avoiding the use of functions in the WHERE clause and using GROUPBY and temporary tables.

H5: Key Improvements in HTML5 H5: Key Improvements in HTML5 Apr 28, 2025 am 12:26 AM

HTML5 brings five key improvements: 1. Semantic tags improve code clarity and SEO effects; 2. Multimedia support simplifies video and audio embedding; 3. Form enhancement simplifies verification; 4. Offline and local storage improves user experience; 5. Canvas and graphics functions enhance the visualization of web pages.

Composer: The Package Manager for PHP Developers Composer: The Package Manager for PHP Developers May 02, 2025 am 12:23 AM

Composer is a dependency management tool for PHP, and manages project dependencies through composer.json file. 1) parse composer.json to obtain dependency information; 2) parse dependencies to form a dependency tree; 3) download and install dependencies from Packagist to the vendor directory; 4) generate composer.lock file to lock the dependency version to ensure team consistency and project maintainability.

How to use type traits in C? How to use type traits in C? Apr 28, 2025 pm 08:18 PM

typetraits are used in C for compile-time type checking and operation, improving code flexibility and type safety. 1) Type judgment is performed through std::is_integral and std::is_floating_point to achieve efficient type checking and output. 2) Use std::is_trivially_copyable to optimize vector copy and select different copy strategies according to the type. 3) Pay attention to compile-time decision-making, type safety, performance optimization and code complexity. Reasonable use of typetraits can greatly improve code quality.

How to configure the character set and collation rules of MySQL How to configure the character set and collation rules of MySQL Apr 29, 2025 pm 04:06 PM

Methods for configuring character sets and collations in MySQL include: 1. Setting the character sets and collations at the server level: SETNAMES'utf8'; SETCHARACTERSETutf8; SETCOLLATION_CONNECTION='utf8_general_ci'; 2. Create a database that uses specific character sets and collations: CREATEDATABASEexample_dbCHARACTERSETutf8COLLATEutf8_general_ci; 3. Specify character sets and collations when creating a table: CREATETABLEexample_table(idINT

See all articles