您的位置:首页 > 数据库 > Memcache

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);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: