-
PHP浮点数的一个常见情况
所属栏目:[PHP教程] 日期:2022-02-25 热度:173
PHP是一种弱类型语言, 这样的特性, 必然要求有无缝透明的隐式类型转换, PHP内部使用zval来保存任意类型的数值, zval的结构如下(5.2为例): struct _zval_struct { /* Variable information */ zvalue_value value; /* value */ zend_uint refcount; zend_uc[详细]
-
全面解读PHP的Yii框架里的日志功能
所属栏目:[PHP教程] 日期:2022-02-25 热度:88
Yii页面级日志开启 在 Main.php中 log段添加、下面显示页面日志 array( class=CWebLogRoute, levels=trace, //级别为trace categories=system.db.* //只显示关于数据库信息,包括数据库连接,数据库执行语句 ), 完整如下: log=array( class=CLogRouter, rou[详细]
-
深入分析PHP的Yii框架中的event事件机制
所属栏目:[PHP教程] 日期:2022-02-24 热度:115
事件 事件可以将自定义代码注入到现有代码中的特定执行点。附加自定义代码到某个事件,当这个事件被触发时,这些代码就会自动执行。例如,邮件程序对象成功发出消息时可触发 messageSent 事件。如想追踪成功发送的消息,可以附加相应追踪代码到messageSent[详细]
-
PHP5.5迭代生成器用法实例详解
所属栏目:[PHP教程] 日期:2022-02-24 热度:134
本文实例讲述了PHP5.5迭代生成器用法。分享给大家供大家参考,具体如下: PHP5.5引入了迭代生成器的概念,迭代的概念早就在PHP有了,但是迭代生成器是PHP的一个新特性,这跟python3中的迭代生成器类似,看看PHP5.5的迭代生成器如何定义。 function xrange([详细]
-
php中socket服务的模型下的编程方法
所属栏目:[PHP教程] 日期:2022-02-24 热度:85
前面我们花了一段时间来搭建高性能的socket服务,可以同时处理大量的连接,但这是在没有具体业务的情况下。 如果我们启用了一个单进程的server,但里面的一个业务耗时1秒,那么在这1秒内是阻塞的,后续的请求会等待,如果并发三个请求,那么三个请求的执行时[详细]
-
阿里云直播PHP SDK使用方法解析
所属栏目:[PHP教程] 日期:2022-02-24 热度:126
1、直播云没有单独的SDK,直播部分的SDK是直接封装在CDN的相关的SDK里面 2、针对SDK,没有demo。 3、针对SDK,没有相关的文档说明。 4、针对SDK的说明,网站上面的说明与源码里面的说明完全不一致。 5、针对SDK没有封装那些常用的访问,需要用户组合调用SD[详细]
-
PHP Opcode缓存加快组件 APC模块安装使用
所属栏目:[PHP教程] 日期:2022-02-24 热度:201
什么是opcode 也许你曾经尝试过用C/C++编写动态内容,虽然开发过程极其繁琐,但为了获得性能提升,这样做或许是值得的,它们可以将动态内容编译成二进制可执行文件,也就是目标代码,由操作系统进程直接装载运行。如今已经很少有人使用C/C++编写动态内容了[详细]
-
php系统日志切割的示例
所属栏目:[PHP教程] 日期:2022-02-24 热度:98
我习惯设置的日志路径是这样 /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 热度:131
PHP自身没有多线程的,可以借助扩展实现。但是curl_multi* 函数实现了多线程访问网站数据的功能。 步骤总结如下: 第一步:调用curl_multi_init 第二步:循环调用curl_multi_add_handle 这一步需要注意的是,curl_multi_add_handle的第二个参数是由curl_in[详细]
-
php 常用header常用示例
所属栏目:[PHP教程] 日期:2022-02-24 热度:119
这里记录下常用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 热度:85
代码审计至少包含两个方面首先要确定代码的目的或功能;另外就是检查代码的可读性,即是否更利于理解和维护。 或许你审计过很多代码,太长的变量名确实很让人抓狂。不仅影响了代码的清晰度,而且过长的变量让你的代码难以扫描,迫使更多的换行。 如何给变[详细]
-
PHP字符变量奇怪现象的解析
所属栏目:[PHP教程] 日期:2022-02-24 热度:113
首先神奇的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 热度:86
php很容易获取到一个文件夹的mtime,可以使用filemtime函数。但文件夹的filemtime由于linux的原因。文件修改时,只会影响他当前的文件夹mtime变化。并不会继续影响文件夹上层的文件夹。所以可能跟真正想得到的文件夹的最后修改时间不同。 看linux机器上的[详细]
-
PHP提示Class SoapClient not found错误怎么解决
所属栏目:[PHP教程] 日期:2022-02-24 热度:170
要用到 SoapClient, new 了一个提示 Class SoapClient not found, 检查了下 phpinfo, 原因是当初没有编译这个扩展, 只好现在再加上了。 php在调用webservice时,报告如下类似错误: ( ! ) Fatal error: Class SoapClient not found in E:/WebSrv/CI/system[详细]
-
php apidoc生成接口文档实例
所属栏目:[PHP教程] 日期:2022-02-24 热度:142
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 热度:180
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 热度:196
序列化是将变量转换为可保存或传输的字符串的过程;反序列化就是在适当的时候把这个字符串再转化成原来的变量使用。这两个过程结合起来,可以轻松地存储和传输数据,使程序更具维护性。 1. serialize和unserialize函数 这两个是序列化和反序列化PHP中数据[详细]
-
php curl随机ip地址抓取内容实例
所属栏目:[PHP教程] 日期:2022-02-24 热度:152
curl是一个特别牛逼的东西!~ 居然还可以生成随机的ip来访问,只可以让服务器非别不出真实ip。这个很6!有人说这个是不算bug的bug。不过有这个功能也给我们带来了很大的方便。 php curl 随机ip访问: function curl($url,$ifpost = 0, $datafields = , $coo[详细]
-
php多线程并发是怎么完成的
所属栏目:[PHP教程] 日期:2022-02-24 热度:136
java里多线程就是一个new thread的事情,php依赖apache靠着linux底层有一个多线程的办法。 今天说说如果你无法操控apache的服务器,如何模拟php并发: ?php if(function_exists(date_default_timezone_set)) { date_default_timezone_set(PRC); } function[详细]
-
PHP基于递归算法处理兔子生兔子问题
所属栏目:[PHP教程] 日期:2022-02-24 热度:187
本文实例讲述了PHP基于递归算法解决兔子生兔子问题。分享给大家供大家参考,具体如下: 接到面试通知辗转反侧,一直在默念明天改如何介绍自己的项目经验等。 匆匆吃了早饭,挤进让人面目狰狞的地铁,此时什么都不顾,只盼着赶紧下地铁。终于提前半小时到了[详细]
-
PHP Opcode缓存加速组件 APC详解说明
所属栏目:[PHP教程] 日期:2022-02-24 热度:115
PHP在性能上相对于其他编译型语言来说算不上突出,但是使用了Opcode缓存后性能提升还是很明显的。常见的缓存加速组件主要有 eAccelerator,XCache,APC本文主要介绍APC的安装使用。 APC,全称是Alternative PHP Cache,官方翻译叫可选PHP缓存。它为我们提供[详细]
-
Php里钩子 Hook 的应用例子
所属栏目:[PHP教程] 日期:2022-02-24 热度:91
我们先来回顾下原本的开发流程;产品汪搞出了一堆需求;当用户注册成功后需要发送短信、发送邮件等等; 然后聪明机智勇敢的程序猿们就一扑而上;把这些需求转换成代码扔在 用户注册成功 和 跳转到首页 之间;没有什么能够阻挡;充满创造力的猿们; class T[详细]
-
php单元测试phpunit入门实例方法
所属栏目:[PHP教程] 日期:2022-02-24 热度:120
这篇文章提供了一些phpunit官方教程没有提到的信息,帮助初学者快速了解php单元测试,在phpunit官网提供了详细的中文教程,可选多种格式下载. phpunit官网地址:https://phpunit.de/ 何为单元测试: 指对软件中的基本单元进行测试,如函数、方法等,以检查[详细]
-
php和c实现按行读取文件实例代码
所属栏目:[PHP教程] 日期:2022-02-24 热度:194
php与c 实现按行读取文件 前言:感觉很糟糕的一场电话一面竟然给了二面通知,好吧,给自己一个机会也给对方一次机会,题外话。海量数据处理经常涉及到hash将原来文件的每一行散列到子文件中,那如何按行读取文件呢,这里记录一下php和c的实现 很水的一篇,[详细]
-
使用PHP访问RabbitMQ消息队列的方法示例
所属栏目:[PHP教程] 日期:2022-02-23 热度:106
本文实例讲述了使用PHP访问RabbitMQ消息队列的方法,分享给大家供大家参考,具体如下. 扩展安装 PHP访问RabbitMQ实际使用的是AMQP协议,所以我们只要安装epel库中的php-pecl-amqp这个包即可 rpm -ivh http://mirror.neu.edu.cn/fedora/epel/6/x86_64/epel-re[详细]