-
详解PHP的Yii框架中组件行为的属性注入与方法注入
所属栏目:[PHP教程] 日期:2022-02-24 热度:148
行为的属性和方法注入原理 上面我们了解到了行为的用意在于将自身的属性和方法注入给所依附的类。 那么Yii中是如何将一个行为 yii/base/Behavior 的属性和方法, 注入到一个 yii/base/Component 中的呢? 对于属性而言,是通过 __get() 和 __set() 魔术方法[详细]
-
PHP使用SOAP扩展实现WebService的办法
所属栏目:[PHP教程] 日期:2022-02-24 热度:64
本文实例讲述了PHP使用SOAP扩展实现WebService的方法。分享给大家供大家参考,具体如下: 最近在一个PHP项目中对接外部接口涉及到WebService,搜索引擎上相关文章不是很多,找到的大都是引用一个号称很强大的开源软件NuSOAP(下载地址:http://sourceforge.n[详细]
-
PHP获取日期对应星期,一周日期,星期开始与结束日期的办法
所属栏目:[PHP教程] 日期:2022-02-24 热度:139
本文实例讲述了PHP获取日期对应星期、一周日期、星期开始与结束日期的方法。分享给大家供大家参考,具体如下: /* * 获取日期对应的星期 * 参数$date为输入的日期数据,格式如:2018-6-22 */ function get_week($date) { //强制转换日期格式 $date_str = dat[详细]
-
PHP Static延迟静态绑定用法解析
所属栏目:[PHP教程] 日期:2022-02-24 热度:152
本文实例讲述了PHP Static延迟静态绑定用法。分享给大家供大家参考,具体如下: PHP5.3以后引入了延迟静态绑定static,它是为了解决什么问题呢?php的继承模型中有一个存在已久的问题,那就是在父类中引用扩展类的最终状态比较困难。来看一个例子。 class A[详细]
-
PHP的Yii框架里YiiBase入口类的扩展写法示例
所属栏目:[PHP教程] 日期:2022-02-24 热度:89
通过yiic.php自动创建一个应用后,入口文件初始代码如下: // change the following paths if necessary $yii=dirname(__FILE__)./../yii/framework/yii.php; $config=dirname(__FILE__)./protected/config/main.php; // remove the following lines when in[详细]
-
php的flush和ob flush无效问题解决方法
所属栏目:[PHP教程] 日期:2022-02-24 热度:77
我的基础环境是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 热度:193
首先说下ereg()与eregi()的区别: ereg()字符串对比匹配函数,区分字符串大小写; eregi()字符串对比匹配函数,不区分字符串大小写. 这两个函数在php正则里经常会用到,但是由于php5.3以后的版本不再支持此函数,如果使用此函数会报:Function eregi() is depr[详细]
-
PHP fwrite换行写入时换行符不起作用的因素
所属栏目:[PHP教程] 日期:2022-02-24 热度:101
php的换行符我们都知道:/n ,回车符:/r,在需要换行时,通常是用/r/n这个组合。但是为什么我们在使用fwrite写入文件时/n换行符不起作用呢。我们先看下面这个例子: ?php $filename = file.txt; $word = 你好!/r/n欢迎来到www.Cuoxin.com; $fh = fopen($fil[详细]
-
php 502 bad gateway的处理方案
所属栏目:[PHP教程] 日期:2022-02-24 热度:58
今天升级完PHP出现了502 Bad Gateway错误,根据经验是php-fpm的问题,但是看到网上那些什么访问量,子进程设置什么的,但是我这太服务器压根没啥流量。所以只能从配置文件下手看看。 [global] pid = /usr/local/php/var/run/php-fpm.pid error_log = /usr/lo[详细]
-
总结了php时间解决问题
所属栏目:[PHP教程] 日期:2022-02-24 热度:103
问题就是通过一个时间处理 echo date(Ymd, strtotime(+1 month, strtotime(20150130)) ); 按照朋友的想法,应该输出的是20150227 ,而实际输出的是20150302 也就是说1月的29,30,31号输出都是3月份的天数,并不是想要得到的2月的天数。 按照我的理解是,当月+[详细]
-
PHPExcel在linux环境下导出报500错误的解决办法
所属栏目:[PHP教程] 日期:2022-02-24 热度:81
原先我导出为 XLSX 格式,用的是如下代码: $objWriter= IOFactory::createWriter($objPHPExcel,Excel2007); 报错,纠结就纠结在,在开发环境和测试环境都没问题,放在生产环境直接 500 错误。 后来我改成导出 XLS 格式,代码如下: $objWriter= IOFactory::cr[详细]
-
PHP截取中文字符串没出现?号怎么办
所属栏目:[PHP教程] 日期:2022-02-24 热度:53
本文实例讲述了PHP实现截取中文字符串不出现?号的解决方法,分享给大家供大家参考,具体如下: 当PHP截取中英文混合字符串时,最后一个汉字经常被拆成两半,例:截取字符串的前18个字,代码如下: ?php $text=1欢迎访问sina新浪播客; $value=substr($text, 0,[详细]
-
PHP完成表单提交时去除斜杠的教程
所属栏目:[PHP教程] 日期:2022-02-24 热度:168
本文实例讲述了PHP实现表单提交时去除斜杠的方法,分享给大家供大家参考,具体如下: html head titleHTML 表单/title /head body form action=method=POST 请输入一个字符串: input type=textsize=30name=strvalue= input type=submitname=submitvalue=提[详细]
-
PHP函数gzuncompress无法使用的问题解决方法
所属栏目:[PHP教程] 日期:2022-02-24 热度:197
解决过程: 1.gzuncompress函数需要zlib支持才可以正常使用 2.可以使用探针检查当前php版本中是否已经开启了该函数 3.解决方式,额外编译php,安装zlib组件 解决步骤: 1.开发环境为centos6.5 bit php5.3 2.参考代码(不可以直接拿去用,请思考下在执行以下代[详细]
-
php foreach循环运用引用注意事项
所属栏目:[PHP教程] 日期:2022-02-24 热度:174
看过PHP相关书籍的都会了解到PHP有个这样的特性:写时复制,所以在用foreach时,需要对数据做修改的时候,都会复制数据,如果数据很大,那么就会带来一定的内存消耗,所以为了避免这种复制操作,就用到了引用,下面就介绍下引用的坑 问题案例: ?php $arr = a[详细]
-
php单元测试phpunit入门实例方法
所属栏目:[PHP教程] 日期:2022-02-24 热度:175
这篇文章提供了一些phpunit官方教程没有提到的信息,帮助初学者快速了解php单元测试,在phpunit官网提供了详细的中文教程,可选多种格式下载. phpunit官网地址:https://phpunit.de/ 何为单元测试: 指对软件中的基本单元进行测试,如函数、方法等,以检查其[详细]
-
php和c实现按行读取文件实例代码
所属栏目:[PHP教程] 日期:2022-02-24 热度:111
php与c 实现按行读取文件 前言:感觉很糟糕的一场电话一面竟然给了二面通知,好吧,给自己一个机会也给对方一次机会,题外话。海量数据处理经常涉及到hash将原来文件的每一行散列到子文件中,那如何按行读取文件呢,这里记录一下php和c的实现 很水的一篇,只[详细]
-
PHP Opcode缓存加速组件 APC详解说明
所属栏目:[PHP教程] 日期:2022-02-24 热度:148
PHP在性能上相对于其他编译型语言来说算不上突出,但是使用了Opcode缓存后性能提升还是很明显的。常见的缓存加速组件主要有 eAccelerator,XCache,APC本文主要介绍APC的安装使用。 APC,全称是Alternative PHP Cache,官方翻译叫可选PHP缓存。它为我们提供了[详细]
-
Php里钩子 Hook 的应用例子
所属栏目:[PHP教程] 日期:2022-02-24 热度:148
我们先来回顾下原本的开发流程;产品汪搞出了一堆需求;当用户注册成功后需要发送短信、发送邮件等等; 然后聪明机智勇敢的程序猿们就一扑而上;把这些需求转换成代码扔在 用户注册成功 和 跳转到首页 之间;没有什么能够阻挡;充满创造力的猿们; class Tes[详细]
-
php apidoc生成接口文档实例
所属栏目:[PHP教程] 日期:2022-02-24 热度:91
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 热度:121
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 热度:195
序列化是将变量转换为可保存或传输的字符串的过程;反序列化就是在适当的时候把这个字符串再转化成原来的变量使用。这两个过程结合起来,可以轻松地存储和传输数据,使程序更具维护性。 1. serialize和unserialize函数 这两个是序列化和反序列化PHP中数据的[详细]
-
php curl随机ip地址抓取内容实例
所属栏目:[PHP教程] 日期:2022-02-24 热度:89
curl是一个特别牛逼的东西!~ 居然还可以生成随机的ip来访问,只可以让服务器非别不出真实ip。这个很6!有人说这个是不算bug的bug。不过有这个功能也给我们带来了很大的方便。 php curl 随机ip访问: function curl($url,$ifpost = 0, $datafields = , $cooki[详细]
-
php多线程并发是怎么完成的
所属栏目:[PHP教程] 日期:2022-02-24 热度:197
java里多线程就是一个new thread的事情,php依赖apache靠着linux底层有一个多线程的办法。 今天说说如果你无法操控apache的服务器,如何模拟php并发: ?php if(function_exists(date_default_timezone_set)) { date_default_timezone_set(PRC); } function a([详细]
-
PHP基于递归算法处理兔子生兔子问题
所属栏目:[PHP教程] 日期:2022-02-24 热度:82
本文实例讲述了PHP基于递归算法解决兔子生兔子问题。分享给大家供大家参考,具体如下: 接到面试通知辗转反侧,一直在默念明天改如何介绍自己的项目经验等。 匆匆吃了早饭,挤进让人面目狰狞的地铁,此时什么都不顾,只盼着赶紧下地铁。终于提前半小时到了面[详细]