目录 解析HTML 【本文由:http://www.1234xp.com/ip.html 提供,感谢支持】生成一个XML 总结 其实从PHP5开始,PHP就为我们提供了一个强大的解析和生成XML相关操作的类,也就是我们今天要讲的 D...
网站建设
JavaScript实现简单打地鼠游戏
本文实例为大家分享了JavaScript实现打地鼠游戏的具体代码,供大家参考,具体内容如下 效果如下: html代码: !DOCTYPE htmlhtml head meta charset="utf-8" / title/title script src="js/index.js"/script link...
PHP中include和require的使用详解
在PHP中,有两种包含外部文件的方式,分别是include和require。他们之间有什么不同呢? 如果文件不存在或发生了错误,require产生E_COMPILE_ERROR级别的错误,程序停止运行。而include只产生...
PHP中的错误及其处理机制
目录 什么是错误? Fatal Error:致命错误(脚本终止运行) Parse Error:编译时解析错误,语法错误(脚本终止运行) Warning Error:警告错误(仅给出提示信息,脚本不终止运行) Notice Err...
PHP中的异常及其处理机制
目录 什么是异常? 总结 上回文章中我们讲到了错误是编译和语法运行时会出现的,它们与逻辑无关,是程序员在码代码时不应该出现的,也就是说,这些错误应该是尽量避免带到线上...
PHP 引用的概念
目录 什么是引用? 引用在数组和对象中的使用 引用的传递 引用的返回 引用的取消 总结 什么是引用? 在 PHP 中引用意味着用不同的名字访问同一个变量内容。它不是C的指针,保存的...
详解PHP中的命名空间
命名空间其实早在PHP5.3就已经出现了。不过大部分同学可能在各种框架的使用中才会接触到命名空间的内容,当然,现代化的开发也都离不开这些能够快速产出的框架。这次我们不从框...
PHP如何获取命令行参数
目录 $argv 获得所有空格分隔的参数列表 getopt() 从命令行参数列表中获取选项 长选项 冒号规则 选项参数中断 总结 使用 PHP 开发的同学多少都会接触过 CLI 命令行。经常会有一些定时任...
PHP中垃圾回收相关函数的使用
目录 再谈循环引用以及强制清理循环引用 开启、关闭及查看循环引用垃圾回收状态 强制回收Zend引擎内存管理器使用的内存 获取垃圾收集器的信息 测试代码: 相关文章 之前我们已经...
PHP Session ID的实现原理与实例
目录 Session作用 session 的工作机制: PHPSESSIONID的生产算法原理: php.ini配置如下: PHP Session工作原理 PHPcli模式通过session_id()使用session Session实例问题 session安全问题 Session作用 Session的根...
PHP 弱引用的相关总结
目录 什么是弱引用 WeakReference 注意 测试代码: 之前的文章中,我们已经学习过引用和引用传值相关的知识。我们知道,PHP 中没有纯引用(指针),不管是对象,还是用引用符号 赋值...
php中配置文件保存修改操作 如config.php文件的读取
fputs() 定义和用法 fputs() 函数写入文件(可安全用于二进制文件)。 fputs() 函数是 fwrite() 函数的别名。 //【文章出处:欧洲服务器】file 必需。规定要写入的打开文件。 //string 必需。规定...
你真的了解PHP中的引用符号(&)吗
引言 最近接手了五六年前的老项目,用的是CI2.0框架,在看框架源码的时候有个地方让我楞了一下,于是有了这篇文章。 字符的最早历史可以追溯到公元1世纪,最早是拉丁语et (意为...
PHP的runkit扩展如何使用
目录 动态修改常量 安装 查看超全局变量键 方法相关操作 类方法相关操作 总结 动态修改常量 define('A', 'TestA');runkit_constant_redefine('A', 'NewTestA');echo A; // NewTestA 是不是很神奇。这个 runk...
如何在PHP中操作临时文件
目录 获取 PHP 的默认临时创建文件目录 创建一个临时文件 根据目录状态创建一个唯一名称的临时文件 总结 获取 PHP 的默认临时创建文件目录 学习过 Linux 操作系统的都会知道有一个目...
PHP的bz2压缩扩展工具详解
在日常的开发和电脑使用中,我们经常会接触到压缩和解压的一些工具,PHP 也为我们准备了很多相关的操作扩展包,都有直接可用的函数能够方便的操作一些压缩解压功能。 安装扩展...
php+laravel 扫码二维码签到功能
简介 为满足公司签到业务场景 最终敲定使用微信二维码来实现 微信公众号相关配置 在微信公众平台登陆上去后,点开开发中的基本配置看到的基本信息 框架及拓展包 laravelovertrue/la...
阿里云服务器搭建Php+Apache运行环境的详细过程
目录 1.apache 1.1 安装apache 1.2 开启apache 1.3 验证安装是否成功 1.4 验证是否能够正常访问 2.Php 2.1 安装php 2.1 验证php是否安装成功 3. 安装mysql 4. Php连接数据库并显示数据到网页 1.apache 1.1 安...
PHP的命令行扩展Readline相关函数的使用
目录 Readline 扩展的安装 基本函数操作 读取一行 命令历史列表相关操作 查看 Readline 状态 命令提示效果 字符回调操作相关示例 总结 readline 扩展函数实现了访问 GNU Readline 库的接口。这...
详解PHP设计模式之依赖注入模式
目的 实现了松耦合的软件架构,可得到更好的测试,管理和扩展的代码 用法 DatabaseConfiguration 被注入 DatabaseConnection 并获取所需的 $config 。如果没有依赖注入模式, 配置将直接创建 D...
详解PHP服务器如何在有限的资源里最大提升并发
目录 概述 服务器 数据库 注册登录 提交表单 总结 概述 假设报考app是用5W rmb 向供应商采购,报名当天涌入海量考生,并发数飙升至30W+,导致系统宕机,拒绝服务,致使考生无法报名,...
解析PHP观察者模式Observer
目录 观察者模式结构图 概念 代码示例 观察者模式结构图 概念 一个"演员"(被观察者),一群"观众"(观察者),一台"摄影机"(记录容器) 【观察者模式中主要角色】 1.抽象主题(...
浅谈PHP设计模式之对象池模式Pool
目录 目的 UML 类图 代码 测试 目的 在初始化实例成本高,实例化率高,可用实例不足的情况下,对象池可以极大地提升性能。在创建对象(尤其是通过网络)时间花销不确定的情况下,...
浅谈PHP设计模式之门面模式Facade
目录 目的 UML 代码 测试 目的 Facade通过嵌入多个(当然,有时只有一个)接口来解耦访客与子系统,同时也为了降低复杂度。 Facade 不会禁止你访问子系统 你可以(应该)为一个子系统...
详解PHP7开启OPcache和Swoole性能的提升对比
目录 前期准备 不开启opcache和laravel 开启OPcache 使用swoole加速包 总结 前期准备 测试所用的主机为虚拟机,虚拟机配置在双核4GB的个人电脑中。虚拟机系统为linux,http服务器采用nginx,用...
低门槛开发iOS、Android、小程序应用的前端框架详
现如今跨平台开发技术已不是什么新鲜话题了,在市面上也有一些开源的框架可供选择,然而技术成熟、产品服务健全的平台并不多,其中也不乏推陈出新的框架值得关注。 比如最近使...
浅谈PHP模拟发送POST请求之curl基本使用
目录 cURL的基本使用步骤 cURL的常用设置 设置基本信息: 设置POST数据信息: 设置验证信息: 设置强化信息: cURL批处理功能的基本使用 cURL批处理时内存占用过多的问题 cURL批处理时的...
详解PHP用mb_string处理windows中文字符
我们都知道windows中(当然是中文版),文件名和文件内容等编码都是gbk,而我们在开发过程中,IDE里的编码则是UTF-8,(这里不讨论为什么等等问题,只考虑怎么把编码转变成一样的)...
如何用PHP websocket实现网页实时聊天
目录 前言 websocket 简介 与http的关系 握手 数据传输 PHP 实现 websocket 服务器 文件描述符 创建服务器socket 服务器逻辑 客户端 创建客户端 页面功能 用户名异步处理 总结 前言 最近艰难地...
如何用PHP实现多线程编程
目录 多线程 线程 适用场景 PHP中的多线程 线程安全 PHP 实现 类和方法 实例代码 异步请求 超时控制 总结 多线程 线程 首先说下线程: 线程(thread) 是操作系统能够进行运算调度的最小单...
如何用PHP实现分布算法之一致性哈希算法
目录 传统算法缺陷 算法思想 算法实现 总结 传统算法缺陷 对于服务器分布,我们要考虑的东西有如下三点:数据平均分布,查找定位准确,降低宕机影响。 传统算法一般是将数据的键...
浅谈并发处理PHP进程间通信之外部介质
目录 进程间通信 文件 flock 代码实现 mysql select for update 代码实现 redis incr SETNX 代码实现 优化 总结 进程间通信 进程间通信,指至少两个进程或线程间传送数据或信号的一些技术或方法...
浅谈并发处理PHP进程间通信之System V IPC
目录 前言 Unix System V IPC 信号量 共享内存 消息队列 函数介绍 ftok semaphore函数 shared_memory函数 代码实现 小结 前言 它的安装和使用非常简单,在编译 PHP 时添加 --enable-sysvsem --enable-sysvs...
详解PHP优化巨量关键词的匹配
目录 问题由来 原始 - grep 设计 代码 进化 - 正则 设计 正则小坑 代码 觉醒 - 拆词 设计 代码 结果 终级 - Trie树 trie树 设计 代码 结果 他径 - 多进程 设计 结果 总结 问题由来 前些天工作...
详解PHP调用Go服务的正确方式
目录 问题 服务耦合 服务抽取 Unix Domain Sockets 进程间通信 简单介绍 适用场景 代码实现 Go 实现的 Trie 树 Go Server PHP Client 小结 效率 杂谈 问题 服务耦合 我们在开发过程中可能会遇到这样...
详解PHP Swoole与TCP三次握手
目录 握手常见问题 连接拒绝 Operation now in progress 丢包 错误ip backlog SYN Flood 握手常见问题 1、连接拒绝 2、Operation now in progress 多是因为丢包、错误ip、backlog满了阻塞tcp_abort_on_overflow=0...
详解Laravel框架的依赖注入功能
目录 概述 真实的例子 结论 概述 任何时候,你在一个控制器类中请求一个依赖,这个服务容器负责: 1.自动地在构造函数中检测依赖关系 2.如果需要构建这个依赖关系 3.通过构造函数...
如何用Laravel包含你自己的帮助函数
很多教程都会说,你在 composer.json 这个文件中通过添加一个自动加载的文件,就可以实现这个需求。但我认为这不是一个好的方式,当你在 helpers.php 文件中添加了更多的函数时,可读性...
详解PHP Swoole长连接常见问题
目录 连接失效问题 如何解决 如何维持长连接 结论 连接失效问题 例子 其中,Redis常见的报错就是: 配置项:timeout 报错信息: Error while reading line from the server Redis可以配置如果客户端...
浅谈Swoole并发编程的魅力
目录 场景介绍 并发编程 编码实现 并发难题 数据同步问题 思维转变 场景介绍 假设我们要做一个石头剪刀布的Web游戏,3个玩家同时提交竞猜后显示胜者。在传统串行化Web编程中,我们...
浅谈定义一个PHP函数
目录 概述 函数参数与它们的数据类型 函数与它们的返回值 可选参数 VS 可空参数 概述 phpfunction divide($dividend, $divisor){ return $dividend / $divisor;}echo divide(12, 4);echo divide('sa', 'sd'); 这段代码乍...
如何理解PHP核心特性命名空间
目录 提出 定义 使用 限定符 在内部访问命名空间 转义\符号 提出 PHP 在 5.3 后提出了命名空间用来解决组件之间的命名冲突问题,主要参考了文件系统的设计: 同一个目录下不允许有相...
详解thinkphp的Auth类认证
RBAC是按节点进行认证的,如果要控制比节点更细的权限就有点困难了,比如页面上面的操作按钮, 我想判断用户权限来显示这个按钮, 如果没有权限就不会显示这个按钮; 再比如我想...
如何让PHP的代码更安全
目录 概述 越权漏洞 1. 水平越权 2. 垂直越权 3. 上下文越权 JWT 的 Token 需要二次加密 LFI (本地文件包含) XSS CSRF (跨站请求伪造) 概述 攻击者通过构造恶意SQL命令发送到数据库,如果程序...
如何用PHP导出PDF
目录 准备工作 简介 TCPDF说明文档 代码实现 准备工作 首先查询了相关的类库,有FPDF,zendPDF,TcPDF等等。首先看了下先选择了FPDF,可以说除了中文字符以外没有什么问题,中文乱码而且...
如何使用Zephir轻松构建PHP扩展
目录 简介 你该安装的第一个扩展 Zephir Zephir 安装 结语 简介 比如,在 PHP 中需要与 SQLite3 交互,我们可以自己写方法与之进行连接,再写 SQL 语句请求数据。然而,这都是些既琐碎又重...
详解PHP的7个预定义接口
目录 1. Traversable(遍历)接口 2. Iterator(迭代器)接口 3. IteratorAggregate(聚合迭代器) 接口 4.ArrayAccess(数组式访问)接口 5. Serializable (序列化)接口 6. Closure 类 7. Generator (生成器)...
浅谈PHP性能优化之php.ini配置
目录 内存 文件上传 会话 缓冲输出 真实路径缓存 内存 默认设置 memory_limit = 128M 单个进程可使用的内存最大值,这个值的设定可以从以下几点考虑: 应用的类型。如果是内存集中型应...
详解php内存管理机制与垃圾回收机制
目录 一、内存管理机制 二、垃圾回收机制 一、内存管理机制 先看一段代码: php//内存管理机制var_dump(memory_get_usage());//获取内存方法,加上true返回实际内存,不加则返回表现内存$a...
如何使用Casbin作为ThinkPHP的权限控制中间件
目录 概述 安装 中间件 Casbin Model 配置 验证 概述 PHP-Casbin是一个强大的、高效的开源访问控制框架,它支持基于各种访问控制模型的权限管理。 Think-Casbin是一个专为 ThinkPHP5.1 定制的...