-
PHP堆排序的原理以及完成代码
所属栏目:[PHP教程] 日期:2022-02-24 热度:129
本篇文章的主要内容是用PHP实现堆排序,具有一定的参考价值,感兴趣的朋友可以了解一下。 1.堆(二叉堆):可以视为一棵完全的二叉树,除了最底层之外,每一层都是满的,这使得堆可以利用数组来表示,每一个结点对应数组中的一个元素 2.给出某个结点的下标,可以计[详细]
-
PHP访问数据缓存解决
所属栏目:[PHP教程] 日期:2022-02-24 热度:175
本文讲述的是PHP访问数据缓存处理,利用Redis或Memcache作为MySQL的缓存,采用是ThinkPHP框架。 方法一 采用ThinkPHP的S方法: $savedata[uid]=session(uid); $savedata[ip]=$_SERVER[REMOTE_ADDR]; $savedata[url]=$_SERVER[REQUEST_URI]; $savedata[crea[详细]
-
php 查看运用了多少内存
所属栏目:[PHP教程] 日期:2022-02-24 热度:63
方法memory_get_usage 是指当前脚本正在使用的内存 unset只是把内存标记为空闲但并没有释放,要GC程序结束后才会释放 $bytes = memory_get_peak_usage(); function formatBytes($bytes, $precision = 2) { $units = array(b, kb, mb, gb, tb); $bytes = ma[详细]
-
PHP调用MEMCACHE高速缓存技术示例
所属栏目:[PHP教程] 日期:2022-02-24 热度:145
在项目中,涉及大访问量时,合理的使用缓存能减轻数据库的压力,同时提升用户体验。即在非实时性的需求的前提下,一小段时间内(若干秒),用于显示的数据从缓存中获取的,而不用直接读取数据库,能有效的减少数据库的读取压力。这里记录一下php语言使用me[详细]
-
怎样用PHP实现队列算法
所属栏目:[PHP教程] 日期:2022-02-24 热度:100
本篇文章主要讲述的是用PHP实现队列算法,具有一定的参考价值,有需要的朋友可以了解一下。 队列是一种特殊的线性表,它只允许在表的前端,可以称之为front,进行删除操作;而在表的后端,可以称之为rear进行插入操作。队列和堆栈一样,是一种操作受限制的[详细]
-
PHP怎样操作Memcache缓存?
所属栏目:[PHP教程] 日期:2022-02-24 热度:149
安装好了memcache服务和php的扩展,我们就可以使用php去操作memcache来实现缓存啦! PHP的Memcache客户端所有方法总结 memcache 类所有的方法列表如下: Memcache::add 添加一个值,如果已经存在,则返回false Memcache::addServer 添加一个可供使用的服务[详细]
-
PHP5.5迭代生成器用法实例详解
所属栏目:[PHP教程] 日期:2022-02-24 热度:78
本文实例讲述了PHP5.5迭代生成器用法。分享给大家供大家参考,具体如下: PHP5.5引入了迭代生成器的概念,迭代的概念早就在PHP有了,但是迭代生成器是PHP的一个新特性,这跟python3中的迭代生成器类似,看看PHP5.5的迭代生成器如何定义。 function xrange([详细]
-
php中socket服务的模型下的编程方法
所属栏目:[PHP教程] 日期:2022-02-24 热度:191
前面我们花了一段时间来搭建高性能的socket服务,可以同时处理大量的连接,但这是在没有具体业务的情况下。 如果我们启用了一个单进程的server,但里面的一个业务耗时1秒,那么在这1秒内是阻塞的,后续的请求会等待,如果并发三个请求,那么三个请求的执行时[详细]
-
阿里云直播PHP SDK使用方法解析
所属栏目:[PHP教程] 日期:2022-02-24 热度:185
1、直播云没有单独的SDK,直播部分的SDK是直接封装在CDN的相关的SDK里面 2、针对SDK,没有demo。 3、针对SDK,没有相关的文档说明。 4、针对SDK的说明,网站上面的说明与源码里面的说明完全不一致。 5、针对SDK没有封装那些常用的访问,需要用户组合调用SD[详细]
-
PHP Opcode缓存加快组件 APC模块安装使用
所属栏目:[PHP教程] 日期:2022-02-24 热度:68
什么是opcode 也许你曾经尝试过用C/C++编写动态内容,虽然开发过程极其繁琐,但为了获得性能提升,这样做或许是值得的,它们可以将动态内容编译成二进制可执行文件,也就是目标代码,由操作系统进程直接装载运行。如今已经很少有人使用C/C++编写动态内容了[详细]
-
php系统日志切割的示例
所属栏目:[PHP教程] 日期:2022-02-24 热度:165
我习惯设置的日志路径是这样 /home/www/logs/域名.log 比如: /home/www/logs/www.Cuoxin.com.log 为了方便管理,日志需要按天保存在一个文件中,并且保留指定天数的日志,超过时间的就删除。 分享一下脚本: #!/usr/bin/php $logdir = /home/www/logs/; //[详细]
-
php curl multi 多线程查询的示例
所属栏目:[PHP教程] 日期:2022-02-24 热度:79
PHP自身没有多线程的,可以借助扩展实现。但是curl_multi* 函数实现了多线程访问网站数据的功能。 步骤总结如下: 第一步:调用curl_multi_init 第二步:循环调用curl_multi_add_handle 这一步需要注意的是,curl_multi_add_handle的第二个参数是由curl_in[详细]
-
php 常用header常用示例
所属栏目:[PHP教程] 日期:2022-02-24 热度:122
这里记录下常用header的信息: ?php header(HTTP/1.1 200 OK); // ok 正常访问 header(HTTP/1.1 404 Not Found); //通知浏览器 页面不存在 header(HTTP/1.1 301 Moved Permanently); //设置地址被永久的重定向 301 header(Location: http://www.ruonu.com/[详细]
-
php给变量取个简短且没歧义的名字
所属栏目:[PHP教程] 日期:2022-02-24 热度:171
代码审计至少包含两个方面首先要确定代码的目的或功能;另外就是检查代码的可读性,即是否更利于理解和维护。 或许你审计过很多代码,太长的变量名确实很让人抓狂。不仅影响了代码的清晰度,而且过长的变量让你的代码难以扫描,迫使更多的换行。 如何给变[详细]
-
PHP字符变量奇怪现象的解析
所属栏目:[PHP教程] 日期:2022-02-24 热度:133
首先神奇的PHP是支持字符数据类型的,有同学就写了这样一段代码: for ($c = a; $c = z; $c++) { echo $c . ; } 然而结果却不是他想要的a到z a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae af ag ah ai aj ak al am an ao ap aq ar[详细]
-
php获得一个文件夹的mtime的程序
所属栏目:[PHP教程] 日期:2022-02-24 热度:134
php很容易获取到一个文件夹的mtime,可以使用filemtime函数。但文件夹的filemtime由于linux的原因。文件修改时,只会影响他当前的文件夹mtime变化。并不会继续影响文件夹上层的文件夹。所以可能跟真正想得到的文件夹的最后修改时间不同。 看linux机器上的[详细]
-
PHP提示Class SoapClient not found错误怎么解决
所属栏目:[PHP教程] 日期:2022-02-24 热度:162
要用到 SoapClient, new 了一个提示 Class SoapClient not found, 检查了下 phpinfo, 原因是当初没有编译这个扩展, 只好现在再加上了。 php在调用webservice时,报告如下类似错误: ( ! ) Fatal error: Class SoapClient not found in E:/WebSrv/CI/system[详细]
-
php和c实现按行读取文件实例代码
所属栏目:[PHP教程] 日期:2022-02-24 热度:60
php与c 实现按行读取文件 前言:感觉很糟糕的一场电话一面竟然给了二面通知,好吧,给自己一个机会也给对方一次机会,题外话。海量数据处理经常涉及到hash将原来文件的每一行散列到子文件中,那如何按行读取文件呢,这里记录一下php和c的实现 很水的一篇,[详细]
-
PHP Opcode缓存加速组件 APC详解说明
所属栏目:[PHP教程] 日期:2022-02-24 热度:156
PHP在性能上相对于其他编译型语言来说算不上突出,但是使用了Opcode缓存后性能提升还是很明显的。常见的缓存加速组件主要有 eAccelerator,XCache,APC本文主要介绍APC的安装使用。 APC,全称是Alternative PHP Cache,官方翻译叫可选PHP缓存。它为我们提供[详细]
-
Php里钩子 Hook 的应用例子
所属栏目:[PHP教程] 日期:2022-02-24 热度:106
我们先来回顾下原本的开发流程;产品汪搞出了一堆需求;当用户注册成功后需要发送短信、发送邮件等等; 然后聪明机智勇敢的程序猿们就一扑而上;把这些需求转换成代码扔在 用户注册成功 和 跳转到首页 之间;没有什么能够阻挡;充满创造力的猿们; class T[详细]
-
php apidoc生成接口文档实例
所属栏目:[PHP教程] 日期:2022-02-24 热度:150
api 生成接口文档示例: { name: 9月份赠险领取分享活动微信接口, version: 1.0.0, description: 9月份赠险领取分享活动微信接口文档 (t=1) , sampleUrl : http://www.Cuoxin.com/ } 另存文件名为:apidoc.json apidoc -i 要生成文档的项目目录 -o 接口文[详细]
-
php并发控制里的独占锁的例子
所属栏目:[PHP教程] 日期:2022-02-24 热度:85
1.并发问题 并发大家都知道是什么情况,这里说的是并发多个请求抢占同一个资源,直接上实例吧 请求:index.php?mod=aaction=btaskid=6 处理: $key = a_b::.$uid._.$taskid; $v = $redis-get($key); if($v == 1){ $redis-setex($key,10,1); //处理逻辑省略[详细]
-
PHP多种序列化和反序列化例子
所属栏目:[PHP教程] 日期:2022-02-24 热度:90
序列化是将变量转换为可保存或传输的字符串的过程;反序列化就是在适当的时候把这个字符串再转化成原来的变量使用。这两个过程结合起来,可以轻松地存储和传输数据,使程序更具维护性。 1. serialize和unserialize函数 这两个是序列化和反序列化PHP中数据[详细]
-
php curl随机ip地址抓取内容实例
所属栏目:[PHP教程] 日期:2022-02-24 热度:187
curl是一个特别牛逼的东西!~ 居然还可以生成随机的ip来访问,只可以让服务器非别不出真实ip。这个很6!有人说这个是不算bug的bug。不过有这个功能也给我们带来了很大的方便。 php curl 随机ip访问: function curl($url,$ifpost = 0, $datafields = , $coo[详细]
-
php多线程并发是怎么完成的
所属栏目:[PHP教程] 日期:2022-02-24 热度:180
java里多线程就是一个new thread的事情,php依赖apache靠着linux底层有一个多线程的办法。 今天说说如果你无法操控apache的服务器,如何模拟php并发: ?php if(function_exists(date_default_timezone_set)) { date_default_timezone_set(PRC); } function[详细]