- 博客(154)
- 收藏
- 关注
原创 yii2安装
Windows安装Composer:一、下载Composer官网下载:https://getcomposer.org/download/二、开启PHP的openssl支持修改D:\WAMP\bin\php\php5.4.12配置文件php.ini去掉注释;三、安装Composer一路"next"安装完毕
2014-12-29 22:26:56
1729
原创 Laravel安装
Laravel环境搭建在有了初步认知后,当然就要开始在自己的电脑上搭建Laravel的开发环境了。系统环境需求PHP 5.3.7或者更高版本,如果没有系统没有安装PHP环境的,请到下面地址下载:http://cn2.php.net/downloads.php电脑上具有web服务器,IIS,apache或者其它web服务器MCrypt PHP扩展安装Composer
2014-12-29 22:24:49
1736
转载 Python urllib2
Python 标准库 urllib2 的使用细节Python 标准库中有很多实用的工具类,但是在具体使用时,标准库文档上对使用细节描述的并不清楚,比如 urllib2 这个 HTTP 客户端库。这里总结了一些 urllib2 的使用细节。Proxy 的设置Timeout 设置在 HTTP Request 中加入特定的 HeaderRedirectCookie使用 HTT
2014-10-30 15:06:52
2696
原创 crontab 用法
cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业。由于Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务: /sbin/service crond start //启动服务 /sbin/service crond stop //关闭服务 /sbin/service crond restart //重启服务
2014-05-21 15:03:06
2388
原创 linux下vi命令大全
进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后一行首 vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复f
2014-03-24 14:01:50
1856
原创 WAMP下redis安装不成功时
首先把 php_redis.dll 和 php_igbinary.dll 放入PHP的ext文件夹,然后在php.ini配置文件里添加如下代码:extension=php_igbinary.dll extension=php_redis.dll重启WebServer注意:extension=php_igbinary.dll 一定要放在 extension=php_
2014-02-08 14:13:17
1407
原创 phpRedisAdmin安装
phpRedisAdmin是一个用于管理redis-server的软件,google了下,没找到完整版的安装方法。主要思路是先安装phpredis模块,然后安装phpRedisAdmin。监控页面是用php写的,phpredis模块用于php调用redis一些方法。ps:个人完全不懂编程,我是这么理解的。不知道对不对项目地址在:https://github.com/ErikDubb
2013-12-07 18:51:20
1475
原创 SVN clean up的作用
SVN 本地更新时,由于一些操作中断更新,如磁盘空间不够,用户取消。 可能会造成本地文件被锁定的情况。一般出现这种情况的解决方法:1、可以使用SVN clean up来清除锁定。2、如果不是本目录锁定,系统提示上一层目录锁定,需要到上一层或者根目录中清除。3.如果在根目录下都无法clean的话,一般采取的方法是另外找一个目录重新CHECKOUT。但有时有时SV
2013-12-04 13:32:54
6998
转载 MongoDB(8)
作为系列的最后一篇,得要说说C#驱动对mongodb的操作,目前驱动有两种:官方驱动和samus驱动,不过我个人还是喜欢后者,因为提供了丰富的linq操作,相当方便。 官方驱动:https://github.com/mongodb/mongo-csharp-driver/downloads。下载后,还提供了一个酷似msdn的帮助文档。samus驱动:https://
2013-12-02 21:05:59
1625
转载 MongoDB(7)
这一篇我们以管理员的视角来看mongodb,作为一名管理员,我们经常接触到的主要有4个方面:1. 安装部署2. 状态监控3. 安全认证4. 备份和恢复,下面我们就一点一点的讲解。 一:安装部署 我之前的文章都是采用console程序来承载,不过在生产环境中这并不是最佳实践,谁也不愿意在机器重启后满地找牙似找mon
2013-12-02 21:05:02
1660
转载 MongoDB(6)
在mongodb里面存在另一种集群,就是分片技术,跟sql server的表分区类似,我们知道当数据量达到T级别的时候,我们的磁盘,内存就吃不消了,针对这样的场景我们该如何应对。 一:分片 mongodb采用将集合进行拆分,然后将拆分的数据均摊到几个片上的一种解决方案。 下面我对这张图解释一下: 人脸: 代
2013-12-02 21:04:16
1541
转载 MongoDB(5)
从这一篇开始我们主要讨论mongodb的部署技术。 我们知道sql server能够做到读写分离,双机热备份和集群部署,当然mongodb也能做到,实际应用中我们不希望数据库采用单点部署,如果碰到数据库宕机或者被毁灭性破坏那是多么的糟糕。 一:主从复制1: 首先看看模型图 2: 从上面的图形中我们可以分析出这种架构有如下的好处
2013-12-02 21:03:23
1855
转载 MongoDB(4)
这些天项目改版,时间比较紧,博客也就没跟得上,还望大家见谅。 好,今天分享下mongodb中关于索引的基本操作,我们日常做开发都避免不了要对程序进行性能优化,而程序的操作无非就是CURD,通常我们又会花费50%的时间在R上面,因为Read操作对用户来说是非常敏感的,处理不好就会被人唾弃,呵呵。 从算法上来说有5种经典的查找,具体的可以参见我的算法速成系列,这其中
2013-12-02 21:02:37
1719
转载 MongoDB(3)
今天跟大家分享一下mongodb中比较好玩的知识,主要包括:聚合,游标。一: 聚合 常见的聚合操作跟sql server一样,有:count,distinct,group,mapReduce。 count count是最简单,最容易,也是最常用的聚合工具,它的使用跟我们C#里面的count使用简直一模一样。 dist
2013-12-02 21:01:59
1613
转载 MongoDB(2)
看过上一篇,相信大家都会知道如何开启mongodb了,这篇就细说下其中的增删查改,首先当我们用上一篇同样的方式打开mongodb,突然傻眼了,擦,竟然开启不了,仔细观察“划线区域“的信息,发现db文件夹下有一个类似的”lock file”阻止了mongodb的开启,接下来我们要做的就是干掉它,之后,开启成功,关于mongodb的管理方式将在后续文章分享。 一
2013-12-02 20:58:46
1658
转载 MongoDB(1)
关于mongodb的好处,优点之类的这里就不说了,唯一要讲的一点就是mongodb中有三元素:数据库,集合,文档,其中“集合”就是对应关系数据库中的“表”,“文档”对应“行”。 一: 下载 上MongoDB官网 ,我们发现有32bit和64bit,这个就要看你系统了,不过这里有两点注意: ①:根据业界规则,偶数为“稳定版”(如:1
2013-12-02 20:55:41
1795
原创 数据库设计中char、varchar、text和nchar、nvarchar、ntext的区别
很多开发者进行数据库设计的时候往往并没有太多的考虑char, varchar类型,有的是根本就没注意,因为存储价格变得越来越便宜了,忘记了最开始的一些基本设计理论和原则,这点让我想到了现在的年轻人,大手一挥一把人民币就从他手里溜走了,其实我想不管是做人也好,做开发也好,细节的把握直接决定很多东西。当然还有一部分人是根本就没弄清楚他们的区别,也就随便选一个。在这里我想对他们做个简单的分析,当然如果有
2013-11-24 20:18:00
1431
原创 php漏洞与代码审计过程中需要注意的几点
漏洞无非这么几类,XSS、sql注入、命令执行、上传漏洞、本地包含、远程包含、权限绕过、信息泄露等 1.xss + sql注入 其中占大头的自然是XSS与SQL注入,对于框架类型或者有公共文件的,建议在公共文件中统一做一次XSS和SQL注入的过滤。写个过滤函数,可由如下所示: $_REQUEST = filter_xss($_REQUEST); $_GET = filter
2013-11-24 20:12:43
1337
原创 mysql replace into的用法和新功能
首先来说所mysql replace into的功能: replace into 跟 insert 功能类似,不同点在于:replace into 首先尝试插入数据到表中, 1. 如果发现表中已经有此行数据(根据主键或者唯一索引判断)则先删除此行数据,然后插入新的数据。 2. 否则,直接插入新数据。 注意,除非表有一个PRIMARY KEY或UNIQUE索引,否则,使用一个REPLAC
2013-11-24 20:09:50
1134
原创 sql筛选记录语句中where和having的区别
HAVING是先分组再筛选记录,WHERE在聚合前先筛选记录。也就是说作用在GROUP BY 子句和HAVING子句前;而 HAVING子句在聚合后对组记录进行筛选。 作用的对象不同。WHERE 子句作用于表和视图,HAVING 子句作用于组。WHERE 在分组和聚集计算之前选取输入行(因此,它控制哪些行进入聚集计算), 而 HAVING 在分组和聚集之后选取分组的行。因此,WHERE 子句
2013-11-24 20:06:53
2550
转载 用PHP实现微博里面短链接的算法
思路: 1)将长网址md5生成32位签名串,分为4段, 每段8个字节; 2)对这四段循环处理, 取8个字节, 将他看成16进制串与0x3fffffff(30位1)与操作, 即超过30位的忽略处理; 3)这30位分成6段, 每5位的数字作为字母表的索引取得特定字符, 依次进行获得6位字符串; 4)总的md5串可以获得4个6位串; 取里面的任意一个就可作为这个长url的短url
2013-11-24 20:04:20
1263
原创 PHP调用session_start后页面始终加载的问题研究
一个PHP页面的执行时间比较长(15秒左右),而只要这个页面没有执行完毕,其他的页面访问都是长时间加载状态,只有那个页面执行完毕了,剩下的页面才能打开。这是什么情况呢,经过查看,两个页面都设计到了SESSION操作,示例代码如下:页面一:页面二: 访问页面一地时候同时访问页面二,你会发现页面二会一直保持加载状态直到页面一执行完毕。问题的原因是
2013-11-24 19:53:32
1410
原创 Windows下的Memcache安装
很多phper不知道如何在Windows下搭建Memcache的开发调试环境,最近个人也在研究Memcache,记录下自己安装搭建的过程。其实我开始研究Memcache的时候并不知道居然还有memcached for Win32这个鸟东西,害得我在CnetOS下折腾1天才搞定,今天突然发现Windows下的Memcache进行开发调试完全没有问题,所以写篇Memcache的文档分享给大家。
2013-11-24 18:41:07
2086
原创 Memcache常用方法
Memcache::add — 添加一个值,如果已经存在,则返回false Memcache::addServer — 添加一个可供使用的服务器地址 Memcache::close — 关闭一个Memcache对象 Memcache::connect — 创建一个Memcache对象 Memcache::debug — 控制调试功能 Memcache::decrement —
2013-11-24 18:39:58
2605
原创 mysql copy复制拷贝表数据及结构的几种方式
mysql拷贝表操作我们会常常用到,下面就为您详细介绍几种mysql拷贝表的方式,希望对您学习mysql拷贝表方面能够有所帮助。假如我们有以下这样一个表:id username password ----------------------------------- 1 admin ************* 2 sa
2013-11-24 18:30:03
2002
转载 MySQL的FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别
Unix时间戳(Unix timestamp),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。在MySQL中如何格式化时间戳?在mysql中因为timestamp无法支持到毫秒,所以很多时候采用毫秒进行存储。那么如何将存储在数据库中Int类型的时间,如:1344954515,转换成我们正常可以肉眼能看懂的时间格式呢?我们一
2013-11-20 17:18:11
1874
转载 PHP-redis中文文档
phpredis是php的一个扩展,效率是相当高有链表排序功能,对创建内存级的模块业务关系很有用;以下是redis官方提供的命令使用技巧:下载地址如下:https://github.com/owlient/phpredis(支持redis 2.0.4)Redis::__construct构造函数$redis = new Redis();conne
2013-11-20 13:12:22
2314
原创 PHP 抽象类
在自然语言中,我们理解抽象的概念是,一个物体的一种大的描述,这种描述对某类物体来说是共有的特性。那么在PHP中也是一样的,我们把一个类进行抽象,可以指明类的一般行为,这个类应该是一个模板,它指示它的子方法必须要实现的一些行为。 PHP抽象类应用的定义: abstract class ClassName{ } PHP抽象类应用要点: 1.定义一些方法,子类必须完全实现这个
2013-11-18 17:44:19
996
原创 php取整函数ceil,floor,round,intval函数的区别
开发过程中,遇到数据处理取整的时候,你会用哪个呢,小涛来介绍一下:PHP取整函数有ceil,floor,round,intval,下面详细介绍一下:1、ceil — 进一法取整说明float ceil ( float $value )返回不小于 value 的下一个整数,value 如果有小数部分则进一位。ceil() 返回的类型仍然是 float,因为 float 值的范围通
2013-11-18 14:53:34
1182
原创 javascript时钟
function startTime(){var today=new Date()var h=today.getHours()var m=today.getMinutes()var s=today.getSeconds()// add a zero in front of numbersm=checkTime(m)s=checkTime(s)document.g
2013-11-18 14:47:34
998
转载 PHP数组一览
1. 数组定义 数组的定义使用 array()方式定义,可以定义空数组: 复制代码代码如下:$number = array(1,3,5,7,9); //定义空数组 $result = array(); $color =array("red","blue","green"); //自定义键值 $language = (1=>"English",3=
2013-11-17 15:11:35
1042
转载 基于 HTML5 的人脸识别技术
演示了通过 HTML5 + JavaScript 技术实现的人脸识别,目前仅适用于 Chrome浏览器,首先需要在地址栏输入 about:flags ,然后找到“启用 MediaStream” 这一项,点击“启用” 后重启 Chrome 浏览器然后打开下面地址:http://neave.com/webcam/html5/face/当你摇头晃脑的时候,那副眼镜会跟
2013-11-17 14:59:57
3606
原创 HTML5语音识别
input type="text" x-webkit-speech x-webkit-grammar="builtin:translate" />
2013-11-17 14:57:17
2097
1
转载 php字符串简介
1:字符串的表示:在超链接中的设置: 其中$Myemail = "qq.com"这样的话,才不会错,因为一对双引号里面的是字符串内容。程序只看两个相邻的“”之间的内容。内容补充:可以用 \ 来转义序列。2:连接字符串 .3:在比较两个字符串时不用区分大小写的函数:$result = strcasecmp($str1, $str2);strcmp
2013-11-14 19:25:00
1044
原创 php中查找数组中是否存在某个元素
查找一个元素是否在数组中,一共有上面三种做法:in_array '函数在数组中搜索给定的值。in_array(value,array,type)type 可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。 array_key_exists 'array_key_exists() 函数判断某个数组中是否存在指定的 key,如果该 key 存在,则返回 true,否
2013-11-14 17:15:59
4328
原创 MySQL添加授权的用户命令实际操作
我们今天是要和大家一起探讨的是MySQL添加授权的用户命令 ,我前两天在相关网站看见MySQL添加授权的用户命令的资料,觉得挺好,就拿出来供大家分享。希望会给你带来一些帮助在此方面。1.新建用户。登录MySQL@>MySQL -u root -p@>密码创建用户MySQL> mysql> insert into M
2013-11-14 10:24:43
1280
转载 mysql触发器的三个示例
mysql触发器是mysql数据库的重要概念,下面为您介绍三个mysql触发器的例子,供您参考,希望对您学习mysql触发器方面能有所帮助。示例一 delimiter // create trigger InsertUser before insert on user for each row Begin insert into user_group(uid,gid
2013-11-13 22:26:21
6269
转载 MySql触发器实例
触发器能进行一些约束.这是个小例子,当Student表的StudentID列被发生更改时,BorrowStudent表的StudentID列也跟着更改.如果Student表删除某记录,BorrowStudent也删除对应StudentID的记录./*先删除将要创建而存在的表*/drop table if exists Student;drop table if exists B
2013-11-13 22:05:18
2615
原创 mysql触发器学习
1 引言Mysql的触发器和存储过程一样,都是嵌入到mysql的一段程序。触发器是mysql5新增的功能,目前线上凤巢系统、北斗系统以及哥伦布系统使用的数据库均是mysql5.0.45版本,很多程序比如fc-star管理端,sfrd(das),dorado都会用到触发器程序,实现对于数据库增、删、改引起事件的关联操作。本文介绍了触发器的类型和基本使用方法,讲述了触发器使用中容易产生的误
2013-11-13 21:31:26
2004
原创 mysql视图学习总结
一、使用视图的理由是什么?1.安全性。一般是这样做的:创建一个视图,定义好该视图所操作的数据。之后将用户权限与视图绑定。这样的方式是使用到了一个特性:grant语句可以针对视图进行授予权限。2.查询性能提高。3.有灵活性的功能需求后,需要改动表的结构而导致工作量比较大。那么可以使用虚拟表的形式达到少修改的效果。这是在实际开发中比较有用的例子:假如因为某种
2013-11-13 21:11:47
1165
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人