- 博客(26)
- 资源 (1)
- 收藏
- 关注
转载 linux awk命令详解
简介awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。awk其名称得自于它的创始人 Alfr
2016-09-29 09:04:02 229
转载 一道PHP面试题,求两个文件的相对路径
首先原题是这样子的:写一个函数,计算出两个文件的相对路径,如 $a = '/a/b/c/d/d.php',$b = '/a/b/1/2/c.php'计算出的$b相对于$a的相对路径应该是:../../c/d那么对于网上给出的答案,看了看貌似只能针对题目中给出的那个路径来计算,如果路径一变化,类似下面这样,那么那些程序好像没用了,当然有些是有用,但是还是报一些警告出来。。。。。例
2016-09-27 08:29:32 2088
转载 TCP/IP协议三次握手与四次握手流程解析
一、TCP报文格式 TCP/IP协议的详细信息参看《TCP/IP协议详解》三卷本。下面是TCP报文格式图:图1 TCP报文格式 上图中有几个字段需要重点介绍下: (1)序号:Seq序号,占32位,用来标识从TCP源端向目的端发送的字节流,发起方发送数据时对此进行标记。 (2)确认序号:Ack序号,占32位,只有ACK标志位为1时,确认序号字段才有效,Ack=Seq+
2016-09-26 15:33:56 200
转载 sql语句的内外左右连接(left join and right join)
1.内连接:取的两个表的(有能连接的字段)的交集,即字段相同的。利用内连接可获取两表的公共部分的记录, select * from A,B where A.id=B.id 与 Select * from A JOIN B ON A.id=Bid的运行结果是一样的。 2.外连接:左右连接。 外连接分为两种,一种是左连接(Left JOIN)和右连接(Right J
2016-09-24 09:41:37 608
原创 温故知新(六):排序介绍
排序方法这里扩展一下常用的排序方法,我认为排序是一个程序员的 基本功.基本概念 外部排序 数据量过大,无法全部加载到内存中,需要借助外部存储进行排序.包括合并排序法 和 直接合并排序法. 内部排序 讲需处理数据加载到内存中进行排序.冒泡排序两两对比,进行交换,比较小的向左移; 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 1.对每一对相邻元素作同样的工作,从开始第一对到结
2016-09-22 12:00:24 272
转载 PHP开发框架浅析
PHP开发框架是什么开发框架的定义我没有找到很准确的描述,下面几句话基本概括了开发框架的的功能和用途框架是一种应用程序的半成品;框架就像是人的骨骼一样;框架是一组可复用的组件;框架是一个可复用的设计构件……简而言之,框架就是制定一套规范或者规则(思想),大家(程序员)在该规范或者规则(思想)下工作。或者说就是使用别人搭好的舞台,你来做表演。PHP开发框架有哪些优缺点
2016-09-17 07:47:07 1511 2
原创 深入理解Mysql读写分离
Mysql的 Replication 是一个异步复制的过程,从一个 Master复制到另一个 Slave。在 Master 与 Slave 之间的实现整个复制过程主要由三个线程来完成,其中两个线程( Sql线程 和 IO线程 )在 Slave 端,另外一个线程(IO线程)在 Master 端。MySQL 复制的基本过程如下:Slave 上面的IO线程连接上 Master,并请求从指定日志文件的指
2016-09-12 21:35:06 309
原创 PHP底层探索(五):Zend引擎简介
Zend引擎是PHP实现的核心,提供了语言实现上的基础设施,比如:PHP语法的实现,脚本的编译运行环境,扩展机制及内存管理等(较知名的还有fackbook的hiphop引擎);Zend引擎是什么?它为什么出现? Zend疫情为php解决了什么?Zend引擎的诞生: PHP的广泛使用,PHP显得力不从心,因为PHP3使用的是边解释边执行的运行方式,运行效率低下,Zend引擎便应运而生了;Zend的特性
2016-09-12 17:25:37 801 2
原创 PHP底层探索(四):SAPI的生命周期
CLI/CGI模式的PHP属于单进程的SAPI模式。这类的请求在处理一次请求后就关闭。也就是只会经过如下几个环节: 开始 - 请求开始 - 请求关闭 - 结束 SAPI接口实现就完成了其生命周期。 单进程多请求则如下图所示: 多进程的SAPI生命周期 通常PHP是编译为apache的一个模块来处理PHP请求。Apache一般会采用多进程模式, Apache启动后会fork出多个子进程,
2016-09-12 16:49:16 338
原创 PHP底层探索(三):一次请求生命周期
我们从未手动开启过PHP的相关进程,它是随着Apache的启动而永兴的.PHP通过mod_php5.so模块和Apache相连(具体说是SAPI) PHP总共有三个模块:内核 zend引擎 扩展层php内核用来处理请求,文件流,错误处理等相关操作;zend引擎(ZE) 用来将资源文件转换成机器语言,然后在虚拟机上运行扩展层是一组函数,类库,和流,php使用它们来进行一些特定的操作;比如
2016-09-12 15:34:18 681
原创 PHP底层探索(二):一次请求的开始与结束
PHP开始执行以后会经过两个主要阶段: 1.处理请求之前的开始阶段 2.请求之后的结束阶段开始阶段有两个过程: 1)过程是模块初始化阶段(MINIT),在整个SAPI声明周期内,该过程只执行一次. 2)过程是模块激活阶段(RINIT),该过程发生在请求阶段,例如请求某页面,则在每次请求之前都会进行模块激活(RINIT请求开始).例如PHP注册了一些扩展模块,则
2016-09-12 08:46:20 446
原创 PHP底层探索(一):几种常见的SAPI
SAPI: Server Application Programming Interface 服务器端引用编程端口.即php与其他应用交互的接口.常用的SAPI有:cgi fast-cgi cli apache的DLLCGI’ CGI即通用网关接口(Common Gateway Interface),他是一段程序,通俗的讲CGI就像是一座桥,把网页和web服务器中的执行程序连接起来,CG
2016-09-11 20:35:07 874
原创 OAuth2.0验证 和 SSO验证 详细
一、OAuth2.0授权协议一种安全的登陆协议,用户提交的账户密码不提交到本APP,而是提交到授权服务器,待服务器确认后,返回本APP一个访问令牌,本APP即可用该访问令牌访问资源服务器的资源。由于用户的账号密码并不与本APP直接交互,而是与官方服务器交互,因而它是安全的。图示:流程:1、获取未授权的Request Token。url:request token url。
2016-09-09 20:41:37 2049
转载 Jacascript 同步服务器时间与页面
将以下的代码 放置html页面中![html] view plain copy> html xmlns="http://www.w3.org/1999/xhtml"> head> meta http-equiv="Content-Type" content="text/html; charset=gb2312" /
2016-09-09 08:47:28 278
转载 Linux下配置 Keepalived(心跳检测部署)
首先呢,我想先给大家简单介绍一下什么是keepalived:Keepalived的作用是检测服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后Keepalived自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器
2016-09-09 08:45:29 3168
翻译 MapReduce: 一种简化的大规模集群数据处理法
(只有文字没有图,图请参考http://research.google.com/archive/mapreduce.html)MapReduce: 一种简化的大规模集群数据处理法翻译:风里来雨里去原文:MapReduce: Simplified Data Processing on Large Clusters 作者:JeffreyDean and Sanjay G
2016-09-08 08:45:10 901
转载 单项散列加密
1.加密文件[php] view plain copy //sha1_en.php header("content-type:text/html;charset=utf-8"); $str = "我是张三,能给我个人数据吗"; $salt="123456";//我是唯一不变的salt盐 $sha1=sha1($str.$s
2016-09-08 07:28:07 230
转载 PHP MVC中RBAC的最佳实现方案的比较
个人认为的PHP MVC框架中实现RBAC的原理 顺序:数据表1.tb_user(id,uname,roleid)2.tb_role(roleid,rolename)3.tb_module(moduleid,moudulename,mvc_url)4.tb_access(accessid,roleid,mouduleid)实现原理1. 根据$uid 得到 $role
2016-09-07 11:59:08 904
转载 php使用sprintf拼接sql
一.封装常用增删查改操作方法[php] view plain copy print?class BaseDAO{ //创建数据 public function create($table_name,$model){ $columns_k=''; $column
2016-09-06 11:58:00 695
原创 递归 ---无限极分类中递归查找一个树结构
递归的注意点:1.一定有一个判断条件,否则递归就死循环了2.每次的递归结果要保存起来,变量自增的实现三种方式:function(&$bar):通过引用地址global :通过设置为全局变量static :设置为静态变量header( "Content-type: text/html; charset=utf-8" );$arr = arr
2016-09-06 10:53:34 604
原创 php借助mcript扩展实现对称加密
mcript提供多种加密方式,一般主要用DES,3DES两种demo.< ?php$str = "我的名字是?一般人我不告诉他!"; //加密内容$key = "key:111"; //密钥$cipher = MCRYPT_DES; //密码类型$modes = MCRYPT_MODE_ECB; //密码模式$iv = mcrypt_create_iv(mcrypt_ge
2016-09-06 07:50:26 530
转载 php使用openssl来实现非对称加密
使用非对称加密主要是借助openssl的公钥和私钥,用公钥加密私钥解密,或者私钥加密公钥解密。1.安装openssl和php的openssl扩展2.生成私钥:openssl genrsa 用于生成rsa私钥文件,生成是可以指定私钥长度和密码保护[plain] view plain copy openssl genrsa -ou
2016-09-06 07:49:03 788
转载 input 多文件上传
html xhr2 0 多文件上传 function xhr2(){ var xhr = new XMLHttpRequest();//第一步 //定义表单变量 var file = document.getElementById('file').files; //conso
2016-09-05 08:15:08 383
转载 Ab压力测试说明
以前安装好APACHE总是不知道该如何测试APACHE的性能,现在总算找到一个测试工具了。就是APACHE自带的测试工具AB(apache benchmark).在APACHE的bin目录下。格式: ./ab [options] [http://]hostname[:port]/pathab.exe -c 200 -n 1000 127.0.0.1/mvc/index.php //
2016-09-02 21:25:21 3348
转载 说说PHP的autoLoad自动加载机制
__autoload的使用方法1: 最经常使用的就是这种方法,根据类名,找出类文件,然后require_oncefunction __autoload($class_name) { $path = str_replace('_', '/', $class_name); require_once $path . '.php'; } // 这里会自动加载Http/File/Inte
2016-09-02 12:18:25 2032
原创 PHP遍历文件夹下所有文件
<?php/**********************一个简单的目录递归函数第一种实现办法:用dir返回对象***********************/function tree($directory) { $mydir = dir($directory); echo "\n"; while($file = $mydir->read()) { if((is_d
2016-09-01 16:56:05 384
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人