#php类

php 设计模式之适配器模式

一、意图将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原来由于接口不兼容而不能一起工作的那此类可以一起工作二、适配器模式结构图 三、适配器模式中主要角色目标(Target)角色:定义客户端使用的与特定领域相关的接口,这也就是我们所期待得到的源(Adaptee)角色:需要进行适配的接口适配器...

php 设计模式之抽象工厂模式

抽象工厂模式(AbstactFactory)是一种常见的软件设计模式。该模式为一个产品族提供了统一的创建接口。当需要这个产品族的某一系列的时候,可以为此系列的产品族创建一个具体的工厂类。一、意图抽象工厂模式提供一个创建一系统相关或相互依赖对象的接口,而无需指定它们具体的类【GOF95】二、抽象工厂模式结构图 ...

php设计模式之原型模式

原型模式(PrototypePattern):与工厂模式类似,都是用来创建对象的。利用克隆来生成一个大对象,减少创建时的初始化等操作占用开销(一)为什么需要原型模式1,有些时候,我们需要创建多个类似的大对象。如果直接通过new对象,开销很大,而且new完还得进行重复的初始化工作。可能把初始化工作封装起来的,但是对于系统...

php设计模式之建造者模式

1模式介绍 是将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示2.类设计  <?php/***建造者模式*copyright(c)http://blog.csdn.net/CleverCode*///需要建造的产品(product)classCar{/*{{{*/pu...

php算法之递归排序

<?phpfunctionquickSort($arr){if(count($arr)>1){$k=$arr[0];$x=array();$y=array();$_size=count($arr);for($i=1;$i<$_size;$i++){if($arr[$i]<=$k){$x[]=$a...
代码星球 ·2020-04-08

php算法之选择排序

functionselect_sort($arr){//实现思路取出第一个下标为假设的最小值然后和后面的元素比较,算出真正最小值的下标,如果不是假设的下标,则把两个元素互换//双重循环完成,外层控制轮数,当前的最小值。内层控制的比较次数//$i当前最小值的位置,需要参与比较的元素//$i<=$len-2,是因为只...
代码星球 ·2020-04-08

php算法之插入排序

//插入排序算法//总结很简单soeasy//拿数组的第二个元素到最后一个元素分别与此元素前面的元素作比较,如果元素值小于前面的元素,则两个元素互换位置。//也就是拿一个元素与从小到大排好顺序的元素做比较,如果小于前面的元素就换位置,直到大于前面的元素为止。//外层for控制将要插入的元素,内层for控制做比较的元素。...
代码星球 ·2020-04-08

php 设计模式之简单工厂模式

简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)的实例。 2模式组成1)工厂(Creator)角色  简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类的创建产品类的方法可以被外界直接调用,创建所需的产品对象。2)抽象...

php 设计模式之责任链模式

责任链模式1.模式介绍使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系,将这个对象连成一条链,并沿着这个链传递该请求,直到有一个对象处理它为止。2.模式组成 2.1抽象处理者(Handler)角色:    定义出一个处理请求的接口。如果需要,接口可...

PHP的类对象的赋值和clone的区别

1.类对象的赋值方式PHP的类的赋值方式,有3种情况,一种是$a= newclass()操作,创建类;一种是普通的对象赋值$a=$b;一种取地址的赋值方式$a=&$b。那么,这三种赋值,指向的内存是否是同一块呢?好吧,我们一起来做一个实验。代码如下:<?phpclassmm{public$nam...

php 魔术常量

<?phpnamespaceceshi;traitwo{functionchifan(){var_dump(__TRAIT__);//类的方法名。}}classtest{usewo;function__construct(){var_dump(__DIR__);//文件所在的目录。如果用在被包括文件中,则返回被包...
代码星球 ·2020-04-08

php 面试题

1.写一个函数,尽可能高效的,从一个标准 url 里取出文件的扩展名  例如: http://www.phpddt.com/abc/de/fg.php?id=1 需要取出php或.php$url='http://www.baidu.com/wang/liu/4...
代码星球 ·2020-04-08

docker 部署nginx、php-fpm

假设机器上已经安装好docker环境一.运行nginx容器1.查找DockerHub上的nginx镜像runoob@runoob:~/nginx$dockersearchnginxNAMEDESCRIPTIONSTARSOFFICIALAUTOMATEDnginxOfficialbuildofNginx.3260[OK...
代码星球 ·2020-04-08

php system()和exec()差别

一、exec ---执行外部程序stringexec(string$command[,array&$output[,int&$return_var]])$command  要执行的shell命令$output    shell命令的输...
代码星球 ·2020-04-08

php迭代器

迭代器实现代码<?phpclassmyIteratorimplementsIterator{public$position=0;public$arr=array('one','two','three','four','five','six');publicfunction__construct(){$this-&...
代码星球 ·2020-04-08
首页上一页...218219220221222...下一页尾页