-
深入分析PHP的Yii框架中的event事件机制
所属栏目:[PHP教程] 日期:2022-02-25 热度:130
事件 事件可以将自定义代码注入到现有代码中的特定执行点。附加自定义代码到某个事件,当这个事件被触发时,这些代码就会自动执行。例如,邮件程序对象成功发出消息时可触发 messageSent 事件。如想追踪成功发送的消息,可以附加相应追踪代码到messageSent[详细]
-
PHP5.5迭代生成器用法实例详解
所属栏目:[PHP教程] 日期:2022-02-25 热度:150
本文实例讲述了PHP5.5迭代生成器用法。分享给大家供大家参考,具体如下: PHP5.5引入了迭代生成器的概念,迭代的概念早就在PHP有了,但是迭代生成器是PHP的一个新特性,这跟python3中的迭代生成器类似,看看PHP5.5的迭代生成器如何定义。 function xrange([详细]
-
PHP怎样支持CURL字符串证书传输?
所属栏目:[PHP教程] 日期:2022-02-25 热度:147
背景:最近在对接微信支付的时候,需要在退款处用到证书,由于我们是SAAS平台,要支持多方多渠道支付,如果把所有证书文件保存在应用服务器会受到SLB的影响,会导致某台机器文件不同步而阻碍退款流程,但把文件存在OSS的话,后端又要从OSS下载到应用服务器[详细]
-
PHP学习之查寻两个链表的第一个公共结点
所属栏目:[PHP教程] 日期:2022-02-25 热度:125
本篇文章小编将带大家学习用PHP实现查找两个链表的第一个公共结点,具有一定的参考价值,感兴趣的朋友可以看看,希望对你有所帮助。 输入两个链表,找出它们的第一个公共结点 1.两个单链表,有公共结点,那么必然,尾部公用 2.找出链表1的长度,找出链表2[详细]
-
PHP堆排序的原理以及完成代码
所属栏目:[PHP教程] 日期:2022-02-25 热度:177
本篇文章的主要内容是用PHP实现堆排序,具有一定的参考价值,感兴趣的朋友可以了解一下。 1.堆(二叉堆):可以视为一棵完全的二叉树,除了最底层之外,每一层都是满的,这使得堆可以利用数组来表示,每一个结点对应数组中的一个元素 2.给出某个结点的下标,可以计[详细]
-
PHP怎样操作Memcache缓存?
所属栏目:[PHP教程] 日期:2022-02-25 热度:137
安装好了memcache服务和php的扩展,我们就可以使用php去操作memcache来实现缓存啦! PHP的Memcache客户端所有方法总结 memcache 类所有的方法列表如下: Memcache::add 添加一个值,如果已经存在,则返回false Memcache::addServer 添加一个可供使用的服务[详细]
-
怎样用PHP实现队列算法
所属栏目:[PHP教程] 日期:2022-02-25 热度:184
本篇文章主要讲述的是用PHP实现队列算法,具有一定的参考价值,有需要的朋友可以了解一下。 队列是一种特殊的线性表,它只允许在表的前端,可以称之为front,进行删除操作;而在表的后端,可以称之为rear进行插入操作。队列和堆栈一样,是一种操作受限制的[详细]
-
PHP调用MEMCACHE高速缓存技术示例
所属栏目:[PHP教程] 日期:2022-02-25 热度:195
在项目中,涉及大访问量时,合理的使用缓存能减轻数据库的压力,同时提升用户体验。即在非实时性的需求的前提下,一小段时间内(若干秒),用于显示的数据从缓存中获取的,而不用直接读取数据库,能有效的减少数据库的读取压力。这里记录一下php语言使用me[详细]
-
php 查看运用了多少内存
所属栏目:[PHP教程] 日期:2022-02-25 热度:190
方法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 热度:122
本文讲述的是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 热度:198
本篇文章给大家带来的内容是介绍如何使用C语言给PHP写扩展,,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 1、在php源码路径的ext文件夹下,新建一个extend_test.def文件,编辑文件内容为: string my_test_function(string str,int[详细]
-
PHP支持CURL字符串证书传输的方法说明
所属栏目:[PHP教程] 日期:2022-02-25 热度:165
本篇文章给大家带来的内容是关于PHP支持CURL字符串证书传输的方法介绍(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 最近在对接微信支付的时候,需要在退款处用到证书,由于我们是SAAS平台,要支持多方多渠道支付,如果把所[详细]
-
php的flush和ob flush无效问题解决方法
所属栏目:[PHP教程] 日期:2022-02-24 热度:172
我的基础环境是nginx1.6.2+php5.3,做一个逐行输出,使用ob_flush时试了N种方法不起作用,比如下面的代码: ?php ob_start(); for(;;) { echo br.......; ob_flush(); flush(); sleep(1); } ? 谷歌了不少的写法都不行,所以问题应该出在了环境配置上而不是[详细]
-
php Function eregi is deprecated 处理方案
所属栏目:[PHP教程] 日期:2022-02-24 热度:66
首先说下ereg()与eregi()的区别: ereg()字符串对比匹配函数,区分字符串大小写; eregi()字符串对比匹配函数,不区分字符串大小写. 这两个函数在php正则里经常会用到,但是由于php5.3以后的版本不再支持此函数,如果使用此函数会报:Function eregi() is de[详细]
-
PHP fwrite换行写入时换行符不起作用的因素
所属栏目:[PHP教程] 日期:2022-02-24 热度:128
php的换行符我们都知道:/n ,回车符:/r,在需要换行时,通常是用/r/n这个组合。但是为什么我们在使用fwrite写入文件时/n换行符不起作用呢。我们先看下面这个例子: ?php $filename = file.txt; $word = 你好!/r/n欢迎来到www.Cuoxin.com; $fh = fopen($f[详细]
-
PHP的imagettftext中文乱码处理方法
所属栏目:[PHP教程] 日期:2022-02-24 热度:81
分析: 1、确认gb库是否正确安装?没有报这个方法不存在。 2、imagettftext()必须utf-8编码,php的整个项目都是utf-8编码,所以不用太多考虑。如果不是,可以mb_convert_encoding()转换; 3、检查字体是否加载正确,写死了字体路径,而且换了多个字体(常[详细]
-
php 替换空行 不匹配空行问题处理办法
所属栏目:[PHP教程] 日期:2022-02-24 热度:52
一个空行,可能包括,换行符,,空格。对字符串进行处理时,难免会遇到对空行进行处理。 1,替换空行,空行可包括空格,,/t,/f,/n $s = preg_replace(/(^(/s|)*$)/m, ,$s); 2,替换空行,只包括换行符 $s = preg_replace(/(($/n/r*$)|(^/n/r*^))+/m, ,$s[详细]
-
PHP完成MySQL数据库备份的源码
所属栏目:[PHP教程] 日期:2022-02-24 热度:198
下面是一个php数据库备份的源代码,大家也可以根据自己的需求进行修改。 ?php // 备份数据库 $host = localhost; $user = root; //数据库账号 $password = ; //数据库密码 $dbname = mysql; //数据库名称 // 这里的账号、密码、名称都是从页面传过来的 if[详细]
-
php hex加密解密函数运用例子
所属栏目:[PHP教程] 日期:2022-02-24 热度:191
加密解密: //Hex(Hex(Md5((原文+密钥).getBytes(utf-8))).getBytes(utf-8)) function String2Hex($string){ $hex=; for ($i=0; $i strlen($string); $i++){ $hex .= dechex(ord($string[$i])); } return $hex; } $key = 111111111111111111111111; $data[s[详细]
-
php版本银联支付接口开发示例
所属栏目:[PHP教程] 日期:2022-02-24 热度:182
银联支付,首先要注意二重要的部分: PHP运行环境是5.4.18以上 开了扩展openss 开发手册上面的列子只做参考,因为基本都是错的。你可以试着去官网下一个demo。。。注意现在银联开发,没有测试密钥提供,只能在正式环境开发【20151219】 下面是我用ThinkPHP[详细]
-
PHP版微信第三方一键登录及获取用户信息开发方法
所属栏目:[PHP教程] 日期:2022-02-24 热度:72
注意,要使用微信在第三方网页登录是需要服务号才可以哦,所以必须到官方申请。 一开始你需要进入微信公众平台开启开发模式,并且填写oauth2的回调地址,地址填写你项目的域名就可以了.比如:www.baidu.com或zhidao.baidu.com.如果你的项目在二级域名就写二级[详细]
-
SCWS 中文分词 php安装使用例子
所属栏目:[PHP教程] 日期:2022-02-24 热度:187
今天发现一个很好用的中文分词工具,分享一下 CWS 是 Simple Chinese Word Segmentation 的首字母缩写(即:简易中文分词系统)。 分词算法上并无太多创新成分,采用的是自己采集的词频词典,并辅以一定的专有名称,人名,地名, 数字年代等规则识别来达到[详细]
-
简单分析PHP中序列化用法介绍
所属栏目:[PHP教程] 日期:2022-02-24 热度:116
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-24 热度:109
本文实例讲述了使用PHP访问RabbitMQ消息队列的方法,分享给大家供大家参考,具体如下. 扩展安装 PHP访问RabbitMQ实际使用的是AMQP协议,所以我们只要安装epel库中的php-pecl-amqp这个包即可 rpm -ivh http://mirror.neu.edu.cn/fedora/epel/6/x86_64/epel-re[详细]
-
怎么利用PHP抓取百度阅读
所属栏目:[PHP教程] 日期:2022-02-24 热度:51
本文实例讲述了PHP编程实现的TCP服务端和客户端功能。分享给大家供大家参考,具体如下: 1、修改php.ini,打开extension=php_sockets.dll 2、服务端程序SocketServer.php ?php //确保在连接客户端时不会超时 set_time_limit(0); //设置IP和端口号 $address[详细]