PHP 知识点

二分查找算法

  • 数据有序排列
  • 可比较的
  • 将数据一分为二,从中间对比

时间复杂度

  • 对数

laravel的设计模式

  • 工厂模式 函数封装、统一入口实例化对象、构建工程降耦
  • 单例模式 不重复创建对象,节省资源
  • 注册树模式 数组结构存储对象,工厂实例化的对象保存在注册树,调用注册树的对象使用
  • 策略模式 定义接口、不同的策略调用不同的逻辑
  • 适配器模式 多种不同的逻辑调用统一的适配器
  • 数据对象映射模式 ORM
  • 观察者模式 对象发生改变,监听它的对象全部会收到通知并更新

laravel 生命周期

  • index.php 入口

    • bootstarp
  • http/console 内核

    • errors
    • middleware
    • session
    • log
    • config
    • environment
    • ...
  • providers
  • route

redis数据类型、应用场景

  • string 单个元素的值最大512MB的数据容量,适合用户应用的数据缓存,统计计数等功能
  • hash 存储、读取复杂对象的数据
  • list 增删快,适合消息队列
  • set 数据唯一性、curd操作的时间复杂度为O(1)
  • sorted set 带权重的消息队列、与set相比每个数据多了一个score进行权重排序

数据结构

php底层变量如何实现的

php的核心数据结构hash table(散列表)特点:

  • 支持k->v查询
  • 可当做数组
  • foreach线性遍历
  • 添加和删除节点的是O(1)复杂度
  • key支持关联和索引数组
  • value支持混合类型

php四层体系

  • application

    • webserver cli etc
  • SAPI

    • apache2handler cgi fast-cgi isapi cli
  • PHP
  • Zend API
  • Zend Engine

opcode优化

  • 扫描
  • 转义
  • 解释为opcode
  • 执行

你可能感兴趣的:(php)