No need to recompile PHP, you can dynamically extend the PHP module
Here is an example of extending mysqli:
1. Install the dependent packages required for phpize
# yum install m4 autoconf
2. Generate configure for compiled mysqli
进入PHP源码目录中扩展模块目录ext# cd /app/httpd/php-5.6.34/ext/mysqli#/usr/local/php/bin/phpizeConfiguring for:PHP Api Version: 20131106Zend Module Api No: 20131226Zend Extension Api No: 220131226
3. Check the current PHP extension directory
# /usr/local/php/bin/php-config --extension-dir/usr/local/php-5.6.34/lib/php/extensions/no-debug-non-zts-20131226
4. Compiling mysqli
# ./configure --with-php-config=/usr/local/php/bin/php-config --with-mysqli=/usr/local/mysql/bin/mysql_config#make && make install cleanInstalling shared extensions: /usr/local/php-5.6.34/lib/php/extensions/no-debug-non-zts-20131226/Installing header files: /usr/local/php-5.6.34/include/php/
5. Check
#ll /usr/local/php-5.6.34/lib/php/extensions/no-debug-non-zts-20131226/-rwxr-xr-x 1 root root 715322 Mar 5 16:11 mysqli.so
6. Add Enable Mysqli
#vim /etc/php.ini找到[MySQLi]配置块添加extension=mysqli.so
7. Restart PHP
PHP post-compilation dynamic expansion module