Linux下php安装Redis扩展
Linux下php安装Redis扩展
1、安装redis
123456789101112131415wget https://github.com/nicolasff/phpredis/archive/2.2.4.tar.gztar zxvf 2.2.4.tar.gz #解压cd phpredis-2.2.4 #进入安装目录/usr/local/php/bin/phpize #用phpize生成configure配置文件#笔者的目录为(/usr/bin/phpize)可以使用which phpize查看路径./configure --with-php-config=/usr/local/php/bin/php-config #配置#笔者的目录为(./configure --with-php-config=/usr/bin/php-config )make #编译make install #安装
安装完成之后,出现下面的安装路径
/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/笔者的目录为/usr/lib64/ ...
push到github时每次输入用户名和密码
在github.com上 建立了一个小项目,可是在每次push的时候,都要输入用户名和密码,很是麻烦
原因是使用了https方式 push
在termail里边 输入 git remote -v
可以看到形如一下的返回结果
origin https://github.com/username/demo.git (fetch)
origin https://github.com/username/demo.git (push)
下面把它换成ssh方式的。
1. git remote rm origin2. git remote add origin git@github.com:username/demo.git3. git push origin
git配置两个SSH-Key
我们在日常工作中会遇到公司有个gitlab,还有些自己的一些项目放在github上。这样就导致我们要配置不同的ssh-key对应不同的环境。下面我们来看看具体的操作:
1,生成一个公司用的SSH-Key
1$ ssh-keygen -t rsa -C "youremail@yourcompany.com" -f ~/.ssh/id_rsa
在~/.ssh/目录会生成id_rsa和id_rsa.pub私钥和公钥。 我们将id_rsa.pub中的内容粘帖到公司gitlab服务器的SSH-key的配置中。
2,生成一个github用的SSH-Key
1$ ssh-keygen -t rsa -C "youremail@your.com" -f ~/.ssh/id_rsa_github
在~/.ssh/目录会生成id_rsa_github和id_rsa_github私钥和公钥。 我们将id_rsa_github中的内容粘帖到github服务器的SSH-key的配置中。
3,添加私钥
1$ ssh-add ~/. ...
Vagrant 打造跨平台开发环境
Vagrant 是一款用来构建虚拟开发环境的工具,非常适合 php/python/ruby/java 这类语言开发 web 应用,“代码在我机子上运行没有问题”这种说辞将成为历史。
我们可以通过 Vagrant 封装一个 Linux 的开发环境,分发给团队成员。成员可以在自己喜欢的桌面系统(Mac/Windows/Linux)上开发程序,代码却能统一在封装好的环境里运行,非常霸气。
安装步骤1. 安装 VirtualBox虚拟机还是得依靠 VirtualBox 来搭建,免费小巧。下载地址:https://www.virtualbox.org/wiki/Downloads
虽然 Vagrant 也支持 VMware,不过 VMware 是收费的,对应的 Vagrant 版本也是收费的
2. 安装 Vagrant下载地址:http://downloads.vagrantup.com/ 根据提示一步步安装。
此外,还得下载官方封装好的基础镜像:Ubuntu precise 32 VirtualBox http://files.vagrantu ...
php批量修改文件名称
程序功能:利用PHP目录和文件函数遍历用户给出目录的所有的文件和文件夹,修改文件名称;
1234567891011121314151617181920function fRename($dirname){ if(!is_dir($dirname)){ echo "{$dirname}不是一个有效的目录!"; exit(); } $handle = opendir($dirname); while(($fn = readdir($handle))!==false){ if($fn!='.'&&$fn!='..'){ $curDir = $dirname.'/'.$fn; if(is_dir($curDir)){ fRename($curDir); ...
在APACHE服务器上的访问方式上去除index.php
在apache 下 ,如何 去掉URL 里面的 index.php例如: 你原来的路径是: localhost/index.php/index 改变后的路径是: localhost/index
1.httpd.conf配置文件中加载了mod_rewrite.so模块 //在APACHE里面去配置
1#LoadModule rewrite_module modules/mod_rewrite.so #把前面的警号去掉
2.在APACHE里面去配置 ,将里面的AllowOverride None都改为AllowOverride All
注意:修改之后一定要重启apache服务。
3.确保URL_MODEL设置为2, (url重写模式)
在项目的配置文件里写
123return Array( ‘URL_MODEL’ => ’2′, );
4 .htaccess文件必须放到跟目录下
这个文件里面加:
1234RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCo ...
Git命令汇总
最近学习git,备份下git常用命令
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485git init # 初始化本地git仓库(创建新仓库)git config --global user.name "xxx" # 配置用户名git config --global user.email "xxx@xxx.com" # 配置邮件git config --global color.ui true # git status等命令自动着色g ...
Mysql不同表复制记录
Mysql复制一条或多条记录并插入表|mysql从某表复制一条记录到另一张表
一、复制表里面的一条记录并插入表里面 1insert into article(title,keywords,desc,contents) select title,keywords,desc,contents from article where article_id = 100;
二、复制表里的多条数据/记录,并插入到表里面 12INSERT INTO `power_node`(title,type,status) SELECT title,type,status FROM power_node WHERE id < 5;INSERT into jiaban (num,overtime) SELECT num,overtime from jiaban where id IN(1,3,5,6,7,9);
三、在创建表时,就插入另一张表里面的某些数据 1create table user AS select * from member where id < 10
php7新特性
PHP7修复了大量BUG,新增了功能和语法糖。这些改动涉及到了核心包、GD库、PDO、ZIP、ZLIB等熟悉和不熟悉的核心功能与扩展包。
PHP7移除了已经被废弃的函数,如mysql_系列函数在PHP5.5被废弃,在PHP7被删除。
PHP7的性能高于HHVM。并且是PHP5.6的两倍。
http://php.net/archive/2015.php#id2015-12-03-1
PHP7特性2015年12月3号, PHP开发团队宣布PHP 7.0.0即将上市。本次发布标志着新的重要的PHP 7系列的开始。
PHP 7.0.0附带了一个新版本的Zend引擎中,无数的改进和新功能,如
性能改善:PHP 7高达两倍快的PHP 5.6
显著减少内存使用
抽象语法树
一致的64位支持
改进的异常层次结构
许多转化为异常致命错误
安全随机数发生器
删除旧的和不支持的SAPIs和扩展
空合并运算符(?)
返回和标量类型声明
匿名类
零成本断言
这是下一个主要版本的PHP。它的发布是近两年的发展征程的结果。这是核心团队的一个非常特殊的成就。而且,它是许多活跃的社区成员难以置信努力的结果。事实上,这是 ...
微信支付错误:商户订单号重复
错误提示今天新版本上线,但微信支付一直返回fail。查看微信返回信息'err_code'=>'OUT_TRADE_NO_USED','err_code_des'=>'商户订单号重复
错误分析百思不得其解。支付订单号,是保存在单独的支付表中。每次发起支付,都是插入支付表,返回一个新的自增ID作为支付订单号。不可能存在重复的问题。后来思考好久,想到了一种情况。保存订单号然后实时生成一个新的订单
原因是测试环境。测试环境测试过支付,使用的也是自增ID。测试支付比较多,多次支付,表产生的自增ID大于线上的字段ID。这样线上ID每次都是已经使用过的。
解决方案临时解决方案手动调大支付记录表的自增ID,这样就不会出现重复ALTER TABLE order_pay auto_increment=1100 ;
支付表大概结构
12345678CREATE TABLE `order_pay` ( `pay_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '支付系列号 ...