-
全面解读PHP的Yii框架里的日志功能
所属栏目:[PHP教程] 日期:2022-02-26 热度:72
Yii页面级日志开启 在 Main.php中 log段添加、下面显示页面日志 array( class=CWebLogRoute, levels=trace, //级别为trace categories=system.db.* //只显示关于数据库信息,包括数据库连接,数据库执行语句 ), 完整如下: log=array( class=CLogRouter, rou[详细]
-
深入分析PHP的Yii框架中的event事件机制
所属栏目:[PHP教程] 日期:2022-02-26 热度:50
事件 事件可以将自定义代码注入到现有代码中的特定执行点。附加自定义代码到某个事件,当这个事件被触发时,这些代码就会自动执行。例如,邮件程序对象成功发出消息时可触发 messageSent 事件。如想追踪成功发送的消息,可以附加相应追踪代码到messageSent[详细]
-
PHP5.5迭代生成器用法实例详解
所属栏目:[PHP教程] 日期:2022-02-26 热度:52
本文实例讲述了PHP5.5迭代生成器用法。分享给大家供大家参考,具体如下: PHP5.5引入了迭代生成器的概念,迭代的概念早就在PHP有了,但是迭代生成器是PHP的一个新特性,这跟python3中的迭代生成器类似,看看PHP5.5的迭代生成器如何定义。 function xrange([详细]
-
PHP怎样支持CURL字符串证书传输?
所属栏目:[PHP教程] 日期:2022-02-25 热度:96
背景:最近在对接微信支付的时候,需要在退款处用到证书,由于我们是SAAS平台,要支持多方多渠道支付,如果把所有证书文件保存在应用服务器会受到SLB的影响,会导致某台机器文件不同步而阻碍退款流程,但把文件存在OSS的话,后端又要从OSS下载到应用服务器[详细]
-
PHP学习之查寻两个链表的第一个公共结点
所属栏目:[PHP教程] 日期:2022-02-25 热度:108
本篇文章小编将带大家学习用PHP实现查找两个链表的第一个公共结点,具有一定的参考价值,感兴趣的朋友可以看看,希望对你有所帮助。 输入两个链表,找出它们的第一个公共结点 1.两个单链表,有公共结点,那么必然,尾部公用 2.找出链表1的长度,找出链表2[详细]
-
PHP堆排序的原理以及完成代码
所属栏目:[PHP教程] 日期:2022-02-25 热度:191
本篇文章的主要内容是用PHP实现堆排序,具有一定的参考价值,感兴趣的朋友可以了解一下。 1.堆(二叉堆):可以视为一棵完全的二叉树,除了最底层之外,每一层都是满的,这使得堆可以利用数组来表示,每一个结点对应数组中的一个元素 2.给出某个结点的下标,可以计[详细]
-
PHP怎样操作Memcache缓存?
所属栏目:[PHP教程] 日期:2022-02-25 热度:70
安装好了memcache服务和php的扩展,我们就可以使用php去操作memcache来实现缓存啦! PHP的Memcache客户端所有方法总结 memcache 类所有的方法列表如下: Memcache::add 添加一个值,如果已经存在,则返回false Memcache::addServer 添加一个可供使用的服务[详细]
-
怎样用PHP实现队列算法
所属栏目:[PHP教程] 日期:2022-02-25 热度:73
本篇文章主要讲述的是用PHP实现队列算法,具有一定的参考价值,有需要的朋友可以了解一下。 队列是一种特殊的线性表,它只允许在表的前端,可以称之为front,进行删除操作;而在表的后端,可以称之为rear进行插入操作。队列和堆栈一样,是一种操作受限制的[详细]
-
PHP调用MEMCACHE高速缓存技术示例
所属栏目:[PHP教程] 日期:2022-02-25 热度:121
在项目中,涉及大访问量时,合理的使用缓存能减轻数据库的压力,同时提升用户体验。即在非实时性的需求的前提下,一小段时间内(若干秒),用于显示的数据从缓存中获取的,而不用直接读取数据库,能有效的减少数据库的读取压力。这里记录一下php语言使用me[详细]
-
php 查看运用了多少内存
所属栏目:[PHP教程] 日期:2022-02-25 热度:96
方法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访问数据缓存解决
所属栏目:[PHP教程] 日期:2022-02-25 热度:186
本文讲述的是PHP访问数据缓存处理,利用Redis或Memcache作为MySQL的缓存,采用是ThinkPHP框架。 方法一 采用ThinkPHP的S方法: $savedata[uid]=session(uid); $savedata[ip]=$_SERVER[REMOTE_ADDR]; $savedata[url]=$_SERVER[REQUEST_URI]; $savedata[crea[详细]
-
php里如何使用C语言写扩展
所属栏目:[PHP教程] 日期:2022-02-25 热度:82
本篇文章给大家带来的内容是介绍如何使用C语言给PHP写扩展,,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 1、在php源码路径的ext文件夹下,新建一个extend_test.def文件,编辑文件内容为: string my_test_function(string str,int[详细]
-
PHP支持CURL字符串证书传输的方法说明
所属栏目:[PHP教程] 日期:2022-02-25 热度:94
本篇文章给大家带来的内容是关于PHP支持CURL字符串证书传输的方法介绍(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 最近在对接微信支付的时候,需要在退款处用到证书,由于我们是SAAS平台,要支持多方多渠道支付,如果把所[详细]
-
php 执行CutyCapt命令网页截图的办法
所属栏目:[PHP教程] 日期:2022-02-24 热度:176
用php使用exec执行命令 PS.默认情况下exec函数是禁用的,打开php.ini检查disable_function是否包含这个还是,有就去除: exec(xvfb-run --server-args=-screen 0, 1024x768x24 CutyCapt --url=http://www.Cuoxin.com --out=2.jpg); 这个里一个问题我的的图[详细]
-
PHPAnalysis简单方便的PHP分词系统类
所属栏目:[PHP教程] 日期:2022-02-24 热度:178
PHPAnalysis分词程序使用居于unicode的词库,使用反向匹配模式分词,理论上兼容编码更广泛,并且对utf-8编码尤为方便。 由于PHPAnalysis是无组件的系统,因此速度会比有组件的稍慢,不过在大量分词中,由于边分词边完成词库载入,因此内容越多,反而会觉得[详细]
-
PHP闭包和匿名函数使用解析
所属栏目:[PHP教程] 日期:2022-02-24 热度:199
1、概述 闭包和匿名函数在PHP 5.3.0中引入,这两个特性非常有用,每个PHP开发者都应该掌握。 闭包是指在创建时封装周围状态的函数,即使闭包所在的环境的不存在了,闭包中封装的状态依然存在。 匿名函数其实就是没有名称的函数,匿名函数可以赋值给变量,[详细]
-
php完成socket推送技术的示例
所属栏目:[PHP教程] 日期:2022-02-24 热度:92
在socket出现之前已经有ajax定时请求、长轮询等方案,但都不能满足需求,socket就应用而生了。 socket基本函数socket 总结下常用的socket函数 服务端:socket_create 创建socket设置基本参数 socket_bind 绑定ip和端口号 socket_listen 监听 socket_accept[详细]
-
PHP完成模拟http请求的方法分析
所属栏目:[PHP教程] 日期:2022-02-24 热度:122
php模拟http请求需要实现以下步骤: 1.连接apache服务器 使用fsockopen:专门用于连接服务器,得到一个连接资源 2.写入http协议 使用fwrite向资源写入内容 3.接收数据 请求成功后返回的数据会被存放在资源中 4.解析数据: 使用fgets,和fgetc函数 实现代码[详细]
-
php微信开发之图片回复功能
所属栏目:[PHP教程] 日期:2022-02-24 热度:190
本文实例为大家分享了php微信图片回复功能的具体代码,供大家参考,具体内容如下: !--?php /** * wechat php test */ //define your token define(TOKEN, weixin); $wechatObj = new wechatCallbackapiTest(); //$wechatObj---valid(); $wechatObj-respons[详细]
-
php微信开发之音乐回复功能
所属栏目:[PHP教程] 日期:2022-02-24 热度:194
本文实例为大家分享了php微信音乐回复功能的具体代码,供大家参考,具体内容如下: !--?php /** * wechat php test */ //define your token define(TOKEN, weixin); $wechatObj = new wechatCallbackapiTest(); //$wechatObj---valid(); $wechatObj-respons[详细]
-
PHP+redis实现的悲观锁机制示例
所属栏目:[PHP教程] 日期:2022-02-24 热度:102
本文实例讲述了PHP+redis实现的悲观锁。分享给大家供大家参考,具体如下: 锁机制 通常使用的锁分为乐观锁,悲观锁这两种,简单介绍下这两种锁,作为本文的背景知识,对这类知识已经有足够了解的同学可以跳过这部分。 乐观锁 先来看下百度百科上的解释:大[详细]
-
PHP基于DateTime类解决Unix时间戳与日期互转问题
所属栏目:[PHP教程] 日期:2022-02-24 热度:115
本文实例讲述了PHP基于DateTime类解决Unix时间戳与日期互转问题。分享给大家供大家参考,具体如下: 这个问题主要在32位的系统下出现,64位的不存在这样的问题。php 5.2+提供了DateTime类来处理这样的问题,参考方案如下(请注意时区的处理): //1、Unix[详细]
-
PHPUnit测试私有属性和方法功能示例
所属栏目:[PHP教程] 日期:2022-02-24 热度:91
本文实例讲述了PHPUnit测试私有属性和方法功能。分享给大家供大家参考,具体如下: 一、测试类中的私有方法: class Sample { private $a = 0; private function run() { echo $a; } } 上面只是简单的写了一个类包含,一个私有变量和一个私有方法。对于pro[详细]
-
简单分析PHP中序列化用法介绍
所属栏目:[PHP教程] 日期:2022-02-23 热度:198
0x00 序列化函数 serialize():返回带有变量类型和值的字符串 unserialize():想要将已序列化的字符串变回 PHP 的值 测试代码: ?php class test{ var $a; var $b; function __construct($a,$b,$c){ $a = $a; $this-b = $b; } } class test1 extends test{[详细]
-
使用PHP访问RabbitMQ消息队列的方法示例
所属栏目:[PHP教程] 日期:2022-02-23 热度:182
本文实例讲述了使用PHP访问RabbitMQ消息队列的方法,分享给大家供大家参考,具体如下. 扩展安装 PHP访问RabbitMQ实际使用的是AMQP协议,所以我们只要安装epel库中的php-pecl-amqp这个包即可 rpm -ivh http://mirror.neu.edu.cn/fedora/epel/6/x86_64/epel-re[详细]