我试图找到有关在PHP7中使用Memcached的任何信息,但我失败了。唯一有价值的信息是php-memcached repo的while( (read_size = recv(sock , client_message , buf , 0 )) > 0 )
{
[...]
if(strcmp(message, start_char))
。{。}
不幸的是,它的travis build和我的机器上的30/126 tests都失败了。
但是Readme.md
命令成功并创建了make install
文件。这是否意味着我可以在生产中使用此扩展,或者它仍然存在错误,不推荐使用?
我将非常感谢任何建议或工作解决方案。
答案 0 :(得分:9)
您需要使用php7
分支; see here,特拉维斯正在过世。
这应该是在Debian / Ubuntu OS上安装memcached
扩展的完整步骤:
sudo apt-get update
sudo apt-get install -y libmemcached-dev libmemcached11 git build-essential
git clone https://github.com/php-memcached-dev/php-memcached
cd php-memcached
git checkout php7
git pull
/usr/local/php7/bin/phpize
./configure --with-php-config=/usr/local/php7/bin/php-config
make
sudo make install
如果您将这些路径安装在不同的位置,则可能需要更改这些路径。
答案 1 :(得分:6)
在最新的ubuntu上安装memcached以获取最新的php:
sudo apt-get install php-memcached
答案 2 :(得分:3)
对于Debian 8用户,您可以使用:
function initialize()
{
var mapOptions = {
zoom: 15,
center: myLatLng,
mapTypeControl: true,
mapTypeControlOptions: {
style: google.maps.MapTypeControlStyle.DROPDOWN_MENU
},
zoomControl: true,
scaleControl: true,
scrollwheel: true,
disableDoubleClickZoom: true,
};
var map = new google.maps.Map(document.getElementById("googleMap"),
mapOptions);
}
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
title: 'Hello World!'
});
google.maps.event.addDomListener(window, "load", initialize);
};
答案 3 :(得分:0)
我通过让工匠在Laravel Lumen框架中工作的问题来解决这个问题。
我正在使用PHP 7. PHP 7.0.15-0ubuntu0.16.04.4
。
我发现唯一的解决方案是使用memcached †安装看似PHP 5版本*:
sudo apt install memcached php-memcached
*
php-memcached/xenial,now 2.2.0-51-ge573a6e+2.2.0-2build2 amd64 [installed]
memcached extension module for PHP5, uses libmemcached
†如果您发现错误:[RuntimeException] Could not establish Memcached connection.
,则需要安装memcached扩展名,如上所述sudo apt install memcached
(如果你是16.04+,如果< 16.04)
apt-get