随笔分类 -  php语言

摘要:我的原则,只有三个字,看心情。 看到这类秒杀,估计很多开发者都头疼,因为你很少真正能在项目接触到,不过没关系,该了解的我们也要了解,以备不时之需。 高并发问题和超卖问题是秒杀活动中常见的2个问题,也是需要面临解决的问题 高并发:比较火热的秒杀在线人数都是10w起的,如此之高的在线人数对于网站架构从前 阅读全文
posted @ 2021-07-26 08:57 方达达 阅读(642) 评论(0) 推荐(0)
摘要:法制与道德就是站在顶峰的人,给弱者制定的规则,而强者一般无视规则。 cgi: cgi是英文(Common Gateway Interface)第一个字母缩写组合,中文意思:公共网关接口,它的作用就是帮助服务器与语言通信,这里就是nginx和php进行通信,因为nginx和php的语言不通,因此需要一 阅读全文
posted @ 2021-07-23 08:56 方达达 阅读(147) 评论(0) 推荐(0)
摘要:一懒众衫小,薪尽自然凉。 生成器提供了一种更容易的方法来实现简单的对象迭代,相比较定义类实现 Iterator 接口的方式,性能开销和复杂性大大降低 看到这个词 yield, 相信很多人都比较陌生,也许在其他语言中看到的比在php中看到的更多,代表的是yield 生成器修饰词; 直接上代码看实现的功 阅读全文
posted @ 2021-07-22 08:57 方达达 阅读(51) 评论(0) 推荐(0)
摘要:别人复习看书,都是看着看着就看懂了,我是看着看着就看开了。 我php7 和 php5 确实有很大的改变,下面我们一一列举: 性能提升:php7 比php5 性能提升了2倍; php5 的许多致命错误,php7改成抛出异常; php7 比php5 移除了一些老的不支持SAPI; php7 新增一些运算 阅读全文
posted @ 2021-07-21 08:50 方达达 阅读(511) 评论(0) 推荐(0)
摘要:面向对象的三个基本特征是:封装、继承、多态。 封装:可以隐藏实现细节,使得代码模块化;继承:可以扩展已存在的代码模块(类);它们的目的都是为了——代码重用。多态:则是为了实现另一个目的——接口重用! 什么是封装? 封装可以隐藏实现细节,使得代码模块化;在面向对象编程上可理解为:把客观事物封装成抽象的 阅读全文
posted @ 2021-07-19 09:07 方达达 阅读(405) 评论(0) 推荐(0)
摘要:其实接触了php几年了,也没留意他的归纳php语言的特点,惭愧,随意就随手记录一下,希望能给phper 加深一点记忆 相比较其他语言,php 具有如下几点特点: 多进程模型:由于PHP是多进程模型,不同请求间互不干涉,这样保证了一个请求挂掉不会对全盘服务造成影响,目前PHP也早支持多线程模型; 弱类 阅读全文
posted @ 2021-07-08 15:52 方达达 阅读(467) 评论(0) 推荐(0)
摘要:HashTable是Zend的核心数据结构,在PHP里面几乎并用来实现所有常见功能,我们知道的PHP数组即是其典型应用,此外,在zend内部,如函数符号表、全局变量等也都是基于hash table,它具有如下特点 支持典型的key->value查询 可以当做数组使用 添加、删除节点是O(1)复杂度 阅读全文
posted @ 2021-07-07 09:01 方达达 阅读(91) 评论(0) 推荐(0)
摘要:php 的执行流程还是比较底层的知识了,带大家了解一下 先直接上个流程图 四个步骤: 扫描,将代码转换成Tokens 解析,将Tokens 转换成有意义的表达式 编译,将表达式编译成opcodes 指令 执行,顺序执行opcodes指令 归纳: PHP动态语言执行过程:拿到一段代码后,经过词法解析、 阅读全文
posted @ 2021-07-06 09:06 方达达 阅读(1003) 评论(0) 推荐(0)
摘要:说到这个php 运行原理,其实每个phper 或多或少都知道点,只是不善于组织,如何用书面上的语言表述出来,所以回答的时候,答不清楚,说实话,其实我也不另外,也是忘记了,没办法,只能每次想起来的时候看一遍,后面又忘记,然后又看一遍,如此往复…… 好了,废话不多说了 首先来解释一个概念:Web终端 服 阅读全文
posted @ 2021-07-05 09:08 方达达 阅读(789) 评论(0) 推荐(0)
摘要:在解决跨域问题之前,我们先了解一下上面是同源这个概念 同源,就是指两个页面具有相同的协议,主机(也常说域名),端口,三个要素缺一不可。相同的协议+域名+端口,我们可以确定是同源的。同源直接可以互相访问相互间的资源。 什么是跨域呢? 跨域,域名不同或者端口不同,协议不同,这些只要有一个不同就属于跨域。 阅读全文
posted @ 2021-07-03 08:57 方达达 阅读(74) 评论(0) 推荐(0)
摘要:理解PHP垃圾回收机制GC(Garbage Collection)之前,先了解一下变量的存储。 在php 手册中已经讲的很清楚了 基础定义: https://www.php.net/manual/zh/features.gc.refcounting-basics.php 可以去这里翻翻手册看一下 简 阅读全文
posted @ 2021-06-14 17:32 方达达 阅读(225) 评论(0) 推荐(0)
摘要:定义: 装饰器模式又叫装饰者模式。装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。 适用场景: 需要动态的给一个对象添加功能,这些功能可以再动态的撤销。 需要增加由一些基本功能的排列组合而产生的非常大量的功能,从而使继承 阅读全文
posted @ 2021-06-12 21:03 方达达 阅读(119) 评论(0) 推荐(0)
摘要:原型模式的作用:对象克隆以避免创建对象时的消耗 特点: 与工厂模式类似,都是用来创建对象。 与工厂模式的实现不同,原型模式是先创建好一个原型对象,然后通过clone原型对象来创建新的对象。这样就免去了类创建时重复的初始化操作。 原型模式适用于大对象的创建,创建一个大对象需要很大的开销,如果每次new 阅读全文
posted @ 2021-06-11 14:34 方达达 阅读(97) 评论(0) 推荐(0)
摘要:定义: 观察者模式(Observer),当一个对象状态发生变化时,依赖它的对象全部会收到通知,并自动更新。 目的: 一个事件发生后,要执行一连串更新操作。传统的编程方式,就是在事件的代码之后直接加入处理的逻辑。当更新的逻辑增多之后,代码会变得难以维护。这种方式是耦合的,侵入式的,增加新的逻辑需要修改 阅读全文
posted @ 2021-06-10 08:58 方达达 阅读(161) 评论(0) 推荐(0)
摘要:策略模式:将一组特定的行为和算法封装成类,以适应某些特定的上下文环境。 假如有一个电商网站系统,针对男性女性用户要各自跳转到不同的商品类目,并且所有的广告位展示不同的广告。在传统的代码中,都是在系统中加入各种if else的判断,硬编码的方式。如果有一天增加了一种用户,就需要改写代码。使用策略模式, 阅读全文
posted @ 2021-06-09 09:00 方达达 阅读(109) 评论(0) 推荐(0)