我已经从https://www.apachefriends.org/index.html在Ubuntu 22.04操作系统中安装了xampp。
成功安装后,我的项目运行良好,但是当我使用下面的命令在我的系统中安装php-memchached时,它没有显示在我的phpinfo()页面中。
命令:
sudo apt-get install -y php-memcached此外,我尝试使用代码检查Memcached是否成功安装。但我收到的错误消息是Class 'Memcached' not found
代码:
$memcached = new Memcached();
$memcached->addServer("127.0.0.1", 8080);
$response = $memcached->get("sample_key");
if($response==true) {
echo $response;
} else {
echo "Cache is empty";
$memcached->set("sample_key", "Sample data from cache") ;
}Yii控制台中的错误输出:
Class 'Memcached' not found请告诉我如何在我的ubuntu系统的Xappp中安装php-memcached?
发布于 2022-08-03 06:08:07
php-memcached扩展使用libmemcached库提供与memcached服务器通信的API。
因此,这个扩展需要 libmemcached客户端库。
台阶。从基本的ubuntu:22.04映像成功地尝试了
FROM ubuntu:22.04
RUN apt-get update && apt-get upgrade -y && apt-get install -y net-tools sudo wget nano和xampp安装:
cd /home
sudo wget https://downloadsapachefriends.global.ssl.fastly.net/8.1.6/xampp-linux-x64-8.1.6-0-installer.run
sudo chmod 755 xampp-linux-x64-8.1.6-0-installer.run
sudo ./xampp-linux-x64-8.1.6-0-installer.run然后,需要安装大量的依赖项:
sudo apt-get update
sudo apt-get install -y memcached
sudo apt-get install php-pear
sudo apt-get install libcurl3-openssl-dev
sudo apt-get install php-dev
sudo apt-get install zlib1g-dev
sudo apt-get install libmemcached-dev
sudo pecl install memcached #note the path to memcached.so
sudo nano /opt/lampp/etc/php.ini
add extension=/usr/lib/php/20210902/memcached.so #path noted before
sudo /opt/lampp/lampp restart或另一种可能的安装:
sudo apt-get update
sudo apt-get install autoconf
sudo apt-get install build-essential
sudo apt-get install -y pkg-config
sudo apt-get install zlib1g-dev
sudo apt-get install libmemcached-dev
sudo /opt/lampp/bin/pecl install memcached #note the path to memcached.so
sudo nano /opt/lampp/etc/php.ini
add extension=/opt/lampp/lib/php/extensions/no-debug-non-zts-20210902/memcached.so #path noted before
sudo /opt/lampp/lampp restart使用您的代码:
$memcached = new Memcached();
$memcached->addServer("127.0.0.1", 8080);
$response = $memcached->get("sample_key");
if($response==true) {
echo $response;
} else {
echo "Cache is empty";
$memcached->set("sample_key", "Sample data from cache") ;
}结果:
Cache is empty而phpinfo:

详情请参阅:
https://stackoverflow.com/questions/73104219
复制相似问题