php关键字-trait
原创 php

php关键字-trait

介绍自 PHP 5.4.0 起,PHP 实现了一种代码复用的方法,称为 trait。Trait 是为类似 PHP 的单继承语言而准备的一种代码复用机制。Trait 为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用 method。Trait 和 Class 组合的语义定义了一种减少复杂性的方式,避免传统多继承和 Mixin 类相关典型问题。Trait 和 Class 相似
阅读全文
PHP SPL,被遗落的宝石
原创 php

PHP SPL,被遗落的宝石

SPL,PHP 标准库(Standard PHP Library) ,此从 PHP 5.0 起内置的组件和接口,并且从 PHP5.3 已逐渐的成熟。SPL 其实在所有的 PHP5 开发环境中被内置,同时无需任何设置。似乎众多的 PHP 开发人员基本没有使用它,甚至闻所未闻。究其原因,可以追述到它那阳春白雪般的说明文档,使你忽略了「它的存在」。SPL 这块宝石犹如铁达尼的「海洋之心」般,被沉入海底。
阅读全文
空间索引-geohash算法实现
原创 php

空间索引-geohash算法实现

算法简介geohash是实现空间索引的一种算法,其他实现空间索引的算法有:R树和其变种GIST树、四叉树、网格索引等算法基本原理geohash算法将地球理解为一个二维平面,将平面递归分解成更小的子块,每个子块在一定经纬度范围内拥有相同的编码,这种方式简单粗暴,可以满足对小规模的数据进行经纬度的检索通过对经纬度的分割,将地球分割成无数的小正方形,每个区域,就是个geohash编码Geohash其实就
阅读全文
declare低级语句
原创 php

declare低级语句

php的declare(ticks=N)的作用有2种,1:Zend引擎每执行N条低级语句就去执行一次 register_tick_function() 注册的函数。2:每执行N条低级语句会检查一次该进程是否有未处理过的信号.那到底什么才叫做低级语句呢?我做出了以下的测试:<?phpdeclare(ticks=1);//每执行一条时,触发register_tick_function()注册
阅读全文
原创 mysql

mysql索引降维

很多人都知道,mysql有索引这个概念,但是却很少去较真,如何利用索引去对数据降维,以提高查询速度。举个常见的场景,那就是用户日志(订单),例如,在一家以电话推销为主的大型公司,有1000个员工,每天都得打出300个营销电话。我们做出以下数据特征模拟.一个月内,有1000个员工号码,每人在8点-18点打出300个营销电话,打一个月数据表sql:CREATE TABLE `dm_
阅读全文
phpCOW机制(写时复制)
原创 php

phpCOW机制(写时复制)

写时复制(Copy-on-Write,也缩写为COW),顾名思义,就是在写入时才真正复制一份内存进行修改。 COW最早应用在*nix系统中对线程与内存使用的优化,后面广泛的被使用在各种编程语言中,如C++的STL等。 在PHP内核中,COW也是主要的内存优化手段。 在前面关于变量和内存的讨论中,引用计数对变量的销毁与回收中起着至关重要的标识作用。 引用计数存在的意义,就是为了使得COW可以正常运作
阅读全文
原创 php

从零开始写php框架

工作不知不觉已经一年半了,期间一直在坚持写博文,只要有好东西都是写出来分享给大家,之前的都是些小知识点,这次,第100篇,给一个真正的干货吧!(注意,本文提到的知识点,请尽量学完掌握!)本教程适用于:1:已经工作过的(初步知道代码质量这个概念)2:自学能力强的(视频教程学起来慢还容易忘,个人喜欢看文档)3:想要学写框架的(废话,不想学看这个干啥)4:对于面对对象有点基础的,没有基础请:http:/
阅读全文
原创 php

php spl库-定长数组

php SPL库是用于解决典型问题(standard problems)的一组接口与类的集合。本文主要讲定长数组(SplFixedArray)定长数组可以产生一个正常数组,不同的是,该数组是固定的,数组不能超过长度,它的速度比一般的数组快,定长数组只能是索引数组定义一个php定长数组(php5.3之后spl已经成为了php内核的一部分,不需要额外安装即可直接使用)$array =&nbs
阅读全文
原创 php

使用二进制进行权限控制

使用二进制进行权限控制,可减少程序的逻辑判断以及提升效率,linux系统的777权限原理也是通过2进制进行判断的例如,当需要判断某个账号是否有,增加,修改,删除,查询,常规判断需要4个权限字段,进行4种判断使用二进制判断,只需要位运算判断权限码就行了以下是原理以及教程位运算说明:http://www.php20.cn/article/116配置增删查改权限值$creat=1;//增0001$u
阅读全文
本文目录
    Loading...