PHP 扩展编译通用办法(以memcache ,mysqli扩展为例)
2017-10-19 16:17
323 查看
一、以memcache 扩展为例
1.到软件官方如memcached 或 pecl.php.net去找扩展源码并下载
下载memcache源码
cd /usr/local/src
wget http://pecl.php.net/get/memcache-2.2.7.tgz
tar -zxvf
memcache-2.2.7.tgz
cd memcache-2.2.7
2.根据当前PHP版本动态创建configure 文件
/usr/local/php/bin/phpize --with-php-config=/usr/local/php/bin/php-config
3.生成configure 后编译
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
生成.so 地址===》 /usr/local/php/lib/php/extensions/no-debug-zts-20131226/memcache.so
4.在php.ini 上加.so
加 extension=/usr/local/php/lib/php/extensions/no-debug-zts-20131226/memcache.so
5.重启apache
测试:
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211) or die ("Could not connect"); //连接Memcached服务器
$memcache->set('key', 'test'); //设置一个变量到内存中,名称是key 值是test
$get_value = $memcache->get('key'); //从内存中取出key的值
echo $get_value;
?>
二、mysqli扩展:
下载的PHP安装包里面有mysqli扩展
find / -name mysqli
找到后cd到目录里
cd /usr/local/src/php-5.6.27/ext/mysqli
根据当前PHP版本动态创建configure 文件 phpize
/usr/local/php/bin/phpize --with-php-config=/usr/local/php/bin/php-config
编译扩展
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
生成:./configure --with-php-config=/usr/local/php/bin/php-config/mysqli.so
修改vim/usr/local/php/etc/php.ini
mysqli.default_socket = /tmp/mysqld.sock
添加
extension =/usr/local/php/lib/php/extensions/no-debug-zts-20131226/mysqli.so
重启apache
测试
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = 'root'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('Could not connect: ' . mysqli_error());
}
echo '数据库连接成功!';
mysqli_close($conn);
1.到软件官方如memcached 或 pecl.php.net去找扩展源码并下载
下载memcache源码
cd /usr/local/src
wget http://pecl.php.net/get/memcache-2.2.7.tgz
tar -zxvf
memcache-2.2.7.tgz
cd memcache-2.2.7
2.根据当前PHP版本动态创建configure 文件
/usr/local/php/bin/phpize --with-php-config=/usr/local/php/bin/php-config
3.生成configure 后编译
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
生成.so 地址===》 /usr/local/php/lib/php/extensions/no-debug-zts-20131226/memcache.so
4.在php.ini 上加.so
加 extension=/usr/local/php/lib/php/extensions/no-debug-zts-20131226/memcache.so
5.重启apache
测试:
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211) or die ("Could not connect"); //连接Memcached服务器
$memcache->set('key', 'test'); //设置一个变量到内存中,名称是key 值是test
$get_value = $memcache->get('key'); //从内存中取出key的值
echo $get_value;
?>
二、mysqli扩展:
下载的PHP安装包里面有mysqli扩展
find / -name mysqli
找到后cd到目录里
cd /usr/local/src/php-5.6.27/ext/mysqli
根据当前PHP版本动态创建configure 文件 phpize
/usr/local/php/bin/phpize --with-php-config=/usr/local/php/bin/php-config
编译扩展
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
生成:./configure --with-php-config=/usr/local/php/bin/php-config/mysqli.so
修改vim/usr/local/php/etc/php.ini
mysqli.default_socket = /tmp/mysqld.sock
添加
extension =/usr/local/php/lib/php/extensions/no-debug-zts-20131226/mysqli.so
重启apache
测试
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = 'root'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('Could not connect: ' . mysqli_error());
}
echo '数据库连接成功!';
mysqli_close($conn);
相关文章推荐
- 编译PHP-memcache扩展
- memcache以及php-memcache扩展的编译安装
- 编译安装libevent,memcache,以及php的memcached扩展
- PHP扩展编译通用的方法
- windows下编译php扩展 memcache
- PHP 7下编译memcache扩展
- Windows下编译PHP和memcache扩展教程
- Centos 6.6(X64位)系统编译安装memcached 并安装PHP的memcache扩展
- 编译php-memcache扩展
- centOS 5.6 编译安装Memcached 与Memcache的PHP扩展
- PHP之——CentOS linux下为已经编译好的php环境添加mysqli扩展
- PHP动态编译出现Cannot find autoconf 动态编译PHP的memcache扩展库
- linux下编译php-memcache的扩展
- php安装扩展mysqli的实现步骤及报错解决办法
- php动态编译mysqli扩展
- 单独编译安装php的mysqli,pdo_mysql,mysqlnd扩展
- ubuntu下编译php扩展的时候报缺少pcre解决办法
- Linux下PHP扩展编译的通用方法
- linux上编译好的php添加memcache扩展
- Memcached 笔记与总结(2)编译 php-memcache 扩展