-
php5-memcached比php5-memcache速度略快一点
2016-01-21 14:29:24php5-memcached比php5-memcache速度略快一点php5-memcached比php5-memcache速度略快一点
php5-memcached和php5-memcache是两个php操作memcached的组件,他们是不同人开发的。
php官网都列出了他们各自的使用方法:
http://www.php.net/manual/en/book.memcache.php (安装使用:sudo apt-get install php5-memcache)http://www.php.net/manual/en/book.memcached.php (安装使用:sudo apt-get install php5-memcached)1. 首先,先安装下apache:
sudo apt-get update
sudo apt-get install apache22. 然后安装下php5:
sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt
3. 接着安装memcached:
sudo apt-get install memcached
4. 接着安装php5-memcached和php5-memcache:
sudo apt-get install php5-memcache
sudo apt-get install php5-memcached
5. 最后重启下apache2:
sudo service apache2 restart
6.编辑test.php内容如下:
<?php // Initialize values: 10000 keys of 20 bytes with 40 bytes of data $c = 10000; $values = array(); for ($i=0;$i<$c;$i++) $values[sprintf('%020s',$i)]=sha1($i); echo "memcache vs memcached: $c keys\n"; // Memcached $m = new Memcached(); $m->addServer('localhost', 11211); $start = microtime(true); foreach ($values as $k => $v) $m->set($k, $v, 3600); $time = microtime(true)-$start; echo "memcached set: $time\n"; $start = microtime(true); foreach ($values as $k => $v) $m->get($k); $time = microtime(true)-$start; echo "memcached get: $time\n"; // Memcache $m = new Memcache(); $m->addServer('localhost', 11211); $start = microtime(true); foreach ($values as $k => $v) $m->set($k, $v, 0, 3600); $time = microtime(true)-$start; echo "memcache set: $time\n"; $start = microtime(true); foreach ($values as $k => $v) $m->get($k); $time = microtime(true)-$start; echo "memcache get: $time\n"; ?>
7. 运行http://machinename/test.php 或者 php /var/www/html/test.php
root@machinename # php /var/www/html/test.php
memcache vs memcached: 10000 keys
memcached set: 0.7015380859375
memcached get: 0.61220598220825
memcache set: 0.78830289840698
memcache get: 0.74954390525818~
root@machinename # php /var/www/html/test2.php
memcache vs memcached: 10000 keys
memcache set: 0.78771591186523
memcache get: 0.75219798088074
memcached set: 0.69968199729919
memcached get: 0.60679888725281参考文档:
1.https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on-ubuntu
2. https://www.digitalocean.com/community/tutorials/how-to-install-and-use-memcache-on-ubuntu-14-04
3. https://www.leaseweb.com/labs/2013/03/memcache-vs-memcached-php-benchmark/
-
PHP开发 MAC 自带apache从php7切换到php5
2018-08-15 11:46:16MacOs 升级到10.13之后自带的PHP也会更新到PHP7,但是自己使用的时PHP5开发的,所以需要切换到PHP5 1.安装php5 curl -s http://php-osx.liip.ch/install.sh | bash -s 5.6 2.php5会安装到下面目录中 /usr/...MacOs 升级到10.13之后自带的PHP也会更新到PHP7,但是自己使用的时PHP5开发的,所以需要切换到PHP5
1.安装php5
curl -s http://php-osx.liip.ch/install.sh | bash -s 5.6
2.php5会安装到下面目录中
/usr/local/php5/
3.用 /usr/local/php5/entropy-php.conf 中的LoadModule配置替换 httpd.conf中的配置#LoadModule php7_module libexec/apache2/libphp7.so //系统默认配置 LoadModule php5_module /usr/local/php5/libphp5.so //php5配置
4.重新启动apache
sudo apachectl restart
-
在Ubuntu 将PHP5升级到PHP7.0 PHP7.1
2018-01-19 17:02:44本文主要讲解从PHP5.X升级到PHP7的方法。 一、安装在Ubuntu14.04或14.10中安装PHP7 先添加一个更新源 apt-get install python-software-properties sudo add-apt-repository ppa:ondrej/php 更新 apt-get ...本文主要讲解从PHP5.X升级到PHP7的方法。
一、安装在Ubuntu14.04或14.10中安装PHP7
先添加一个更新源
apt-get install python-software-properties
sudo add-apt-repository ppa:ondrej/php
更新
apt-get update
二、为Apache 服务器更新PHP7.0
Apache执行PHP代码使用的是mod_php模块,安装最新的PHP版本:
sudo apt-get install php7.0 libapache2-mod-php7.0 php7.0 -mcrypt
如果你使用的是MySQL数据库,那么你需要执行以下语句同事更新PHP-MySQL的相关绑定。当然你也可以其他有用的模块,比如Curl, GD, Cli, JSON等。
sudo apt-get install php7.0-mysql php7.0-cli php7.0-gd php7.0-json
如果你想安装附加的PHP7.0的一些模块,你可以使用apt-cache命令进行模糊查询。
sudo apt-cache search php7
安装好以后可以重启Apache服务器然后验证php版本
$ sudo service apache2 restart
$ php -v
你也可以放在web目录下进行验证
sudo vi /var/www/html/info.php
phpinfo();
?>
如果在web页面上显示的还是5.X那么需要在apache2配置里面禁用php5的模块,然后重新安装下php7.0 (不出意外会自动加载),接着重启Apache2即可
sudoadd-apt-repository ppa:ondrej/php
sudoapt-get updateapt-cache search php7.1
apt-get install php7.1
a2dismod php5
如果之前有其他版本,在这边禁用掉
a2enmod php7.1
apt-get install php7.1-mysql
apt-get install php7.1-curl
apt-get install php7.1-mbstring
apt-get install php7.1-gd
apt-get install php7.1-xml
apt-get install php7.1-soap
apt-get install php7.1-mcrypt
-
安装多个 PHP 版本(PHP7, PHP5)
2018-05-08 11:19:06安装 PHP 5.6PHP 5 和 PHP 7 的安装其实是大同小异。目前最新版本是 php-5.6.21。先下载源码:[root@lnmp ~]# cd /usr/local/src[root@lnmp src]# wget -c http://cn2.php.net/distributions/php-5.6.21.tar.gz解压...安装 PHP 5.6
PHP 5 和 PHP 7 的安装其实是大同小异。目前最新版本是 php-5.6.21。先下载源码:
[root@lnmp ~]# cd /usr/local/src
[root@lnmp src]# wget -c http://cn2.php.net/distributions/php-5.6.21.tar.gz解压:
[root@lnmp src]# tar -zxvf php-5.6.21.tar.gz
configure. 其中安装路径为 /usr/local/php5:
[root@lnmp src]# cd php-5.6.21/
[root@lnmp php-5.6.21]# ./configure --prefix=/usr/local/php5 --enable-fpm --with-mysql --with-mysqli --with-zlib --with-curl --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-openssl --enable-mbstring --enable-xml --enable-session --enable-ftp --enable-pdo安装:
[root@lnmp php-5.6.21]# make
[root@lnmp php-5.6.21]# make install配置 PHP 5.6
[root@lnmp php-5.6.21]# cp php.ini-development /usr/local/php5/lib/php.ini
[root@lnmp php-5.6.21]# vim /usr/local/php5/lib/php.ini查找 mysql.default_socket 改成
mysql.default_socket = /var/lib/mysql/mysql.sock
查找 mysqli.default_socket 改成:
mysqli.default_socket = /var/lib/mysql/mysql.sock
根据自己需要修改时区,查找 date.timezone,将前面的 ; 去掉,改成:
date.timezone = PRC
好了,PHP 5.6 已经安装完成:
root@lnmp php-5.6.21]# /usr/local/php5/bin/php -v
PHP 5.6.21 (cli) (built: May 18 2016 17:31:13)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies配置 php-fpm
[root@lnmp php-5.6.21]# cp /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf
[root@lnmp php-5.6.21]# vim /usr/local/php5/etc/php-fpm.conf查找 user 将
user = nobody
group = nobody改成
user = nginx
group = nginx查找 listen 将
listen = 127.0.0.1:9000
改成
listen = 127.0.0.1:9001
这里是因为 PHP 7 已经占用了 9000 端口,所以用 9001 端口
配置 php-fpm 服务
因为 PHP 7 的服务文件为 php-fpm.service 所以这里用 php5-fpm.service
[root@lnmp php-5.6.21]# cp sapi/fpm/php-fpm.service /usr/lib/systemd/system/php5-fpm.service
[root@lnmp php-5.6.21]# vim /usr/lib/systemd/system/php5-fpm.service将:
PIDFile=${prefix}/var/run/php-fpm.pid
ExecStart=${exec_prefix}/sbin/php-fpm --nodaemonize --fpm-config ${prefix}/etc/php-fpm.conf改成
PIDFile=/usr/local/php5/var/run/php-fpm.pid
ExecStart=/usr/local/php5/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php5/etc/php-fpm.conf这里做的就是用刚才 PHP 5 安装路径替代 prefix 变量
重新载入 systemd
[root@lnmp php-5.6.21]# systemctl daemon-reload
可以设置开机启动:
[root@lnmp php-5.6.21]# systemctl enable php5-fpm
立即启动 php-fpm
[root@lnmp php-5.6.21]# systemctl start php5-fpm
查看状态:
[root@lnmp php-5.6.21]# systemctl status php5-fpm
php5-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php5-fpm.service; disabled)
Active: active (running) since Wed 2016-05-18 18:06:40 CST; 28s ago
Main PID: 5867 (php-fpm)
CGroup: /system.slice/php5-fpm.service
├─5867 php-fpm: master process (/usr/local/php5/etc/php-fpm.conf)
├─5868 php-fpm: pool www
└─5869 php-fpm: pool www
May 18 18:06:40 lnmp.cn systemd[1]: Started The PHP FastCGI Process Manager.
[root@lnmp php-5.6.21]#配置不同的 nginx 站点使用不用的 PHP 版本
为网站创建一个目录:
[root@lnmp php-5.6.21]# mkdir -p /www/dev.lnmp.cn
创建 phpinfo 文件
[root@lnmp php-5.6.21]# vim /www/dev.lnmp.cn/phpinfo.php
输入,并保存:
<?php
phpinfo();创建 nginx 站点配置文件
[root@lnmp php-5.6.21]# cd /etc/nginx/conf.d/
[root@lnmp conf.d]# vim dev.lnmp.cn.conf输入,并且保存:
server {
listen 80;
server_name dev.lnmp.cn;
root /www/dev.lnmp.cn;
location / {
index index.php index.html index.htm;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9001;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}控制那个站点使用那个版本的 PHP 关键是在 fastcgi_pass 的端口:
fastcgi_pass 127.0.0.1:9001;
9001 是 PHP 5 端口,如果要用 PHP 7,则用 9000端口。
应该大功告成了,立即 reload nginx
[root@lnmp conf.d]# systemctl reload nginx
查看 phpinfo
-
PHP5与PHP7兼用性问题
2018-08-27 10:49:01字符串赋值问题 在修改已有的游戏后台代码中,发现有许多功能无法正常显示出来,都是乱码的格式。之后追查问题的时候,发现之前的代码是$a=''这样子来赋值的。但是之后的操作又是数组赋值操作,...PHP5: PHP7... -
php5 php7 变量区别
2016-01-05 16:13:40php5 中变量 zval 都是通过make_std_zval宏从堆上分配 #define MAKE_STD_ZVAL(zv) ALLOC_ZVAL(zv) INIT_PZVAL(zv) zv是一个zval指针 -
ubuntu16.04安装php5出现Package php5 have no installation candidate,解决方法
2017-11-02 14:17:23笔者在Ubuntu16.04桌面系统安装php5时,提示Package php5 have no installation candidate, 在http://stackoverflow.com/questions/36788873/package-php5-have-no-installation-candidate-ubuntu-16-04上面找到了... -
xampp php5和php7最简单的切换方法
2019-08-29 22:14:41全网最简单的xampp php5和...将不用的xampp版本目录的apache/conf/extra/httpd-xampp.conf文件改名,复制到主apache的apache/conf/extra/目录中,这里我不用xampp5,所以这里我把php5的httpd-xampp.conf文件改名为... -
php和apache配置 LoadModule php5_module D:/php/php5apache2.dll
2014-02-26 13:57:13网上的教程,的确先安装Apache,在安装php,不过php还是下绿色版的好,在修改httpd.conf文件时,大多数人都 是:LoadModule php5_module c:\Program Files\php\php5apache2.dll,都是apache restart出错。... -
linux Centos7.4安装php7或php5
2018-08-22 16:05:10php5的安装 1. rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm 2. rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm 3. yum install php56w.x86_64 php56w-cli.x86_6... -
在apache下将php5转成php7
2018-01-29 22:48:43打开 AppServ/php5/extras/swver.php文件,我们发现 <?php error_reporting(0); $conf="H:/AppServ/Apache24/conf/httpd.conf"; $php5ini="H:/AppServ/php5/"; $php7ini="H:/AppServ/php7/"; ... 1234567 下面的... -
ubuntu 16.04安装php5
2017-04-26 15:38:23$ sudo apt-get install python-software-properties $ sudo add-apt-repository ppa:ondrej/...$ sudo apt-get update $ sudo apt-get install -y php5参考: https://askubuntu.com/questions/756181/installing-php -
PHP5升级PHP7-永久环境变量设置
2017-07-18 14:21:42原环境是PHP5,后来想装PHP7,于是各种百度装好了PHP7(其中各种库不兼容,好一顿折腾),过程百度吧。 最后安装成功,环境变量也设置成功,第二天开机 php -v一看,还是php5的版本,于是百度了下,环境变量设置的... -
php7和PHP5对比的新特性和性能优化
2018-05-22 16:37:401)在 PHP5中,从 php 脚本到 opcodes 的执行的过程是: Lexing:词法扫描分析,将源文件转换成 token 流; Parsing:语法分析,在此阶段生成 op arrays。 2)PHP7 中在语法分析阶段不再直接生成 op arrays,... -
php7和php5区别
2018-04-03 11:30:251、php标量类型和返回类型声明 #主要分为两种模式,强制性模式和严格模式 declare(strict_types=1) #1表示严格类型校验模式,作用于函数调用和返回语句;0表示弱类型校验模式。 2、NULL合并运算符 $site = is... -
ThinkPHP3.2.3从php5升级到php7艰辛之路
2019-02-26 17:17:57windows下,之前用的项目是部署在Apache2.4.17+php5.x版本, 因为客户那边网络安全扫描,发现很多漏洞,其中有apache、php的高危漏洞,多达上百次, 急需修复,如不修复将面临站点关闭的风险。 于是联系软件... -
mac下搭建php开发环境 phpstorm+php5简单介绍
2016-11-18 15:15:11a. 安装 phpstorm b. 配置phpstorm,集成mac php5服务器 c.终端执行:curl -s ...d.新安装的php目录是/usr/local/php5/bin ...e.随便运行一个php文件,提示没有配置服务器,配置目录选:/usr/local/php5/b -
mac下搭建php开发环境 phpstorm+php5
2015-07-22 18:16:492. 配置phpstorm,集成mac php5服务器 a.终端执行:curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5 b.新安装的php目录是/usr/local/php5/bin c.随便运行一个php文件,提示没有配置服务器,配置目录选... -
PHP5升级到PHP7注意点(windows环境)
2016-05-14 16:37:50windows环境下将php5升级到php7
-
(新)备战2021软考网络工程师分类强化培训套餐
-
ArcGIS Pro2.6和ArcGIS Enterprise学习
-
GPON宽带接入设备的研究.docx
-
Redis数据库入门与使用
-
《初等数论》第七章习题答案.rar
-
Vue Cli中使用Mock.js
-
彻底学会正则表达式
-
大疆创新招聘嵌入式笔试题.docx
-
python数据分析基础
-
three.js入门速成
-
基于TM4单片机的一阶倒立摆系统设计(电赛)
-
Educoder Python入门-绘制炸弹轨迹(下)
-
大学 毕业设计 项目实训 基于HGE游戏引擎开发的一款射击游戏.zip
-
易语言开发通达信DLL公式接口
-
(新)备战2021软考信息安全工程师基础知识套餐
-
C语言学习笔记—循环控制语句(while、for、do.....while)
-
什么是大端法和小端法?
-
目前用下来最溜的MacOS微信多开工具!
-
runtime-compiler和runtime-only的区别
-
【数据分析-随到随学】机器学习模型及应用