代码改变世界

随笔分类 -  php知识点

PHP正则表达式

2022-01-24 09:11 by 天心PHP, 41 阅读, 收藏, 编辑
摘要: 正则表达式的主要作用是:分割、匹配、查找、替换 正则表达式中包括的元素: 原子(普通字符:a-z A-Z 0-9 、原子表、转义字符) 元字符(有特殊功能的字符) 模式修正符(系统内置部分字符 i 、m、S、U...) 转义字符 \d 包含所有数字[0-9] \D 除所有数字外[^0-9] \w 包 阅读全文

api接口调用

2021-12-02 11:43 by 天心PHP, 139 阅读, 收藏, 编辑
摘要: public function cur_request($URL,$type,$params,$headers){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $URL); if($headers!=""){ curl_setopt ($ch, 阅读全文

php实现中文反转字符串的方法

2021-07-07 13:48 by 天心PHP, 198 阅读, 收藏, 编辑
摘要: <?php header("content-type:text/html;charset=utf-8"); /** 此函数的作用是反转中文字符串 mb_strlen() 获取字符的长度 mb_substr() 获取字符的单个元素 krsort() 按照键值逆序排序数组 implode() 将数组拼接 阅读全文

【PHP】冒泡排序以及优化

2021-07-06 23:34 by 天心PHP, 114 阅读, 收藏, 编辑
摘要: 最近看了一下冒泡排序这个经典的算法,在网上也看到了很多改进冒泡排序算法的方式,这里总结一下: 冒泡排序最简单的实现方式如下(我用PHP来实现,用其他语言也是一样的): for($i=0;$i<$arr_count;$i++){ for($j=0;$j<$arr_count-1;$j++){ if($ 阅读全文

PHP中的ArrayAccess用法详解

2021-06-09 17:55 by 天心PHP, 191 阅读, 收藏, 编辑
摘要: 在Laravel的源码当中,作者多次使用到了PHP SPL中的ArrayAccess接口,那么这个ArrayAccess接口到底有什么作用呢?我会用一个简单的例子跟大家说明。 请看下面的这段代码,Foo类实现了ArrayAccess接口中的四个方法,请仔细看这些方法内部的实现代码。看到了吗?这些代码 阅读全文

php接口幂等性

2021-05-18 10:03 by 天心PHP, 1396 阅读, 收藏, 编辑
摘要: 什么是幂等性 幂等性是系统服务对外一种承诺,承诺只要调用接口成功,外部多次调用对系统的影响是一致的。声明为幂等的服务会认为外部调用失败是常态,并且失败之后必然会有重试。 什么情况下需要幂等 以SQL为例: SELECT col1 FROM tab1 WHER col2=2,无论执行多少次都不会改变状 阅读全文

Laravel 服务容器,IoC,DI

2021-04-02 15:03 by 天心PHP, 67 阅读, 收藏, 编辑
摘要: DI 就是常说的依赖注入,那么究竟什么是依赖注入呢? 打个比方,电脑(非笔记本哈)需要键盘和鼠标我们才能进行操作,这个‘需要’换句话说就是‘依赖’键盘和鼠标。 那么,相应的,一个类需要另一个类才能进行作业,那么这也就是依赖。 看一段代码: class Computer { protected $ke 阅读全文

PHP socket初探 --- select系统调用

2020-07-17 01:20 by 天心PHP, 567 阅读, 收藏, 编辑
摘要: 在<PHP socket初探 先从一个简单的socket服务器开始>中依次讲解了三个逐渐进步的服务器: 只能服务于一个客户端的服务器 利用fork可以服务于多个客户端的额服务器 利用预fork派生进程服务于多个客户端的服务器 最后一种服务器的进程模型基本上的大概原理其实跟我们常用的apache是非常 阅读全文

同步IO和异步IO

2020-07-16 21:12 by 天心PHP, 548 阅读, 收藏, 编辑
摘要: IO编程 IO在计算机中指Input/Output,也就是输入和输出。由于程序和运行时数据是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方,通常是磁盘、网络等,就需要IO接口。 比如你打开浏览器,访问新浪首页,浏览器这个程序就需要通过网络IO获取新浪的网页。浏览器首先会发送数据 阅读全文

UDP主要丢包原因及具体问题分析

2020-07-16 20:29 by 天心PHP, 951 阅读, 收藏, 编辑
摘要: 一、主要丢包原因 1、接收端处理时间过长导致丢包:调用recv方法接收端收到数据后,处理数据花了一些时间,处理完后再次调用recv方法,在这二次调用间隔里,发过来的包可能丢失。对于这种情况可以修改接收端,将包接收后存入一个缓冲区,然后迅速返回继续recv。 2、发送的包巨大丢包:虽然send方法会帮 阅读全文

socket套接字及缓冲区详解

2020-07-16 20:05 by 天心PHP, 1741 阅读, 收藏, 编辑
摘要: socket套接字及缓冲区详解 文章目录一、域(domain)二、类型(type)三、协议(protocol)四、socket缓冲区以及阻塞模式1、缓冲区简介2、使用write()/send()发送数据3、使用read()/recv()读取数据4、系统调用read()的返回错误场景五、面试题 >TC 阅读全文

php socket通信

2020-07-16 17:28 by 天心PHP, 229 阅读, 收藏, 编辑
摘要: socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过"套接字"向网络发出请求或者应答网络请求。socket既不是程序,也不是协议,其只是操作系统提供的通信层的一组抽象API。前面章节介绍了php socket的一些常用重要的函数,在socket通信中就会有使 阅读全文

PHP socket连接

2020-07-16 17:16 by 天心PHP, 279 阅读, 收藏, 编辑
摘要: socket建立套接的过程图: 首先了解socket 几个主要函数: socket的关键函数1: socket_create($net参数1,$stream参数2,$protocol参数3) 作用:创建一个socket套接字,说白了,就是一个网络数据流。 返回值:一个套接字,或者是false,参数错 阅读全文

关于PHP程序员技术职业生涯规划

2020-07-13 12:07 by 天心PHP, 860 阅读, 收藏, 编辑
摘要: 看到很多PHP程序员职业规划的文章,都是直接上来就提Linux、PHP、MySQL、Nginx、Redis、Memcache、jQuery这些,然后就直接上手搭环境、做项目,中级就是学习各种PHP框架和类库,高级阶段就是MySQL优化、PHP内核与扩展、架构设计这些了。 这些文章都存在一个严重的缺陷 阅读全文

让PHP7达到最高性能的几个Tips

2020-07-13 11:57 by 天心PHP, 185 阅读, 收藏, 编辑
摘要: 本文地址: https://www.laruence.com/2015/12/04/3086.html 转载请注明出处 PHP7已经发布了, 作为PHP10年来最大的版本升级, 最大的性能升级, PHP7在多放的测试中都表现出很明显的性能提升, 然而, 为了让它能发挥出最大的性能, 我还是有几件事想 阅读全文

php 接触的不常见函数

2020-07-11 02:52 by 天心PHP, 165 阅读, 收藏, 编辑
摘要: constant constant — 返回一个常量的值 constant ( string $name ) : mixed 通过 name 返回常量的值。 当你不知道常量名,却需要获取常量的值时,constant() 就很有用了。也就是常量名储存在一个变量里,或者由函数返回常量名。 <?php d 阅读全文

php 中__set()和__get()的具体用法

2020-07-11 02:18 by 天心PHP, 321 阅读, 收藏, 编辑
摘要: php 中__set()和__get()的具体用法__set() 方法用于设置私有属性值。__get() 方法用于获取私有属性值。 __isset() 方法用于检测私有属性值是否被设定。 __unset() 方法用于删除私有属性。 __set()与__get()是两个魔术方法,用于设置和输出对象里的 阅读全文

PHP之Trait详解

2020-07-11 01:25 by 天心PHP, 533 阅读, 收藏, 编辑
摘要: php从以前到现在一直都是单继承的语言,无法同时从两个基类中继承属性和方法,为了解决这个问题,php出了Trait这个特性 用法:通过在类中使用use 关键字,声明要组合的Trait名称,具体的Trait的声明使用Trait关键词,Trait不能实例化 与普通类的异同: 相同: trait 能够像普 阅读全文

PHP中__call()方法与重载解析

2020-07-11 00:56 by 天心PHP, 565 阅读, 收藏, 编辑
摘要: 一、前言 特别注意,虽然__call()或__callStatic()方法就是为实现重载而设计的,但是为了便于理解,先将两者分开进行理解!!! __call()方法的特性是它的特性,用其实现重载是实现重载,这是两码事~ 二、__call()方法 在PHP5.3.0之后,又增加了一个__callSta 阅读全文

PHP Closure(闭包)类详解

2020-07-11 00:28 by 天心PHP, 796 阅读, 收藏, 编辑
摘要: 闭包就是能够读取其他函数内部变量的函数。例如在javascript中,只有函数内部的子函数才能读取局部变量,所以闭包可以理解成“定义在一个函数内部的函数“。在本质上,闭包是将函数内部和函数外部连接起来的桥梁。 在php中,闭包函数一般就是匿名函数. Closure 面向对象变成语言代码的复用主要采用 阅读全文
点击右上角即可分享
微信分享提示