-
解读PHP的Yii框架中请求和响应的处理流程
所属栏目:[PHP教程] 日期:2022-02-24 热度:80
一、请求(Requests) 请求:一个应用的请求是用 yii/web/Request 对象来表示的,该对象提供了诸如 请求参数(译者注:通常是GET参数或者POST参数)、HTTP头、cookies等信息。 默认情况下,对于一个给定的请求,你可以通过 request application component 应[详细]
-
简要剖析PHP的Yii框架的组件化机制的基础知识
所属栏目:[PHP教程] 日期:2022-02-24 热度:180
组件是 Yii 应用的主要基石。是 yii/base/Component 类或其子类的实例。三个用以区分它和其它类的主要功能有: 属性(Property) 事件(Event) 行为(Behavior) 或单独使用,或彼此配合,这些功能的应用让 Yii 的类变得更加灵活和易用。以小部件 yii/jui/D[详细]
-
分析PHP的Yii框架中cookie和session功能的相关操作
所属栏目:[PHP教程] 日期:2022-02-24 热度:114
Sessions 和 请求 和 响应类似, 默认可通过为yii/web/Session 实例的session 应用组件 来访问sessions。 开启和关闭 Sessions 可使用以下代码来开启和关闭session。 $session = Yii::$app-session; // 检查session是否开启 if ($session-isActive) ... //[详细]
-
PHP的Yii框架里YiiBase入口类的扩展写法示例
所属栏目:[PHP教程] 日期:2022-02-24 热度:79
通过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 Static延迟静态绑定用法解析
所属栏目:[PHP教程] 日期:2022-02-24 热度:53
本文实例讲述了PHP Static延迟静态绑定用法。分享给大家供大家参考,具体如下: PHP5.3以后引入了延迟静态绑定static,它是为了解决什么问题呢?php的继承模型中有一个存在已久的问题,那就是在父类中引用扩展类的最终状态比较困难。来看一个例子。 class A[详细]
-
PHP对象注入的实例分析
所属栏目:[PHP教程] 日期:2022-02-24 热度:71
1. 写在前面 最近经常会遇到一些比较有意思的漏洞,比如PHP反序列化漏洞,PHP对象注入。这些漏洞可能在平时很难遇到,但是在CTF以及一些CMS倒是经常看到他们的背影。今天刚刚好手上看到了某CTF的代码,但是并没有获取所有源码,因此修改了部分代码进行分析。[详细]
-
PHP最短webshell的一些理解
所属栏目:[PHP教程] 日期:2022-02-24 热度:123
The shortest webshell of PHP 某天闲逛wooyun,发现一篇挺有意思的文章《32C3 CTF 两个Web题目的Writeup》。其中提到了两个比较有意思的东西: PHP执行运算符反引号 上面提及的文章,我读前几遍的时候是很费解的!后来,土司的P牛给我一些指点,豁然开朗 Go[详细]
-
PHP双引号使用注意事项
所属栏目:[PHP教程] 日期:2022-02-24 热度:70
PHP很多语法特性会让攻击者有机可乘,例如PHP会检测双引号中的变量。 执行如下代码: function test() { echo abc; } echo ${@test()}; //或者 echo ${@phpinfo()}; 原理如下: $a = b; $b = a; echo $$a; //a 以上就利用了PHP可变变量,双引号{}可解析双引号[详细]
-
PHP中STDCLASS的使用方法详解
所属栏目:[PHP教程] 日期:2022-02-24 热度:130
PHP中STDCLASS在我们开发应用中使用到的不多,但是PHP中STDCLASS作用是非常的大的,下面我们一起来看PHP中STDCLASS的用法. 在WordPress中很多地方使用stdClass来定义一个对象(而通常是用数组的方式),然后使用get_object_vars来把定义的对象『转换』成数组. 如[详细]
-
PHP聊天室 WebSocket技术实战
所属栏目:[PHP教程] 日期:2022-02-24 热度:131
PHP聊天室以前做时都是通过ajax与PHP来实现的,今天我们就一起来看一个PHP聊天室WebSocket技术实战例子. 最近在研究聊天室技术,因为我是做php的,肯定想要从php入手,偶的一个聊天室,下载地址: http://pan.baidu.com/s/1dDWsbip 密码:i2qz 正在修行当中,准备以[详细]
-
PHPExcel导出excel入门实例教程
所属栏目:[PHP教程] 日期:2022-02-24 热度:159
PHPExcel是一款非常强大的操作excel的插件了,我们可以使用PHPExcel插件来读写excel了,下面就一起来看看吧. PHPExcel是一个强大的excel导出/导入插件,它甚至还可以导出pdf等,是个非常好用的php插件,php学习必不可少,那么如何使用它呢,下面是PHPExcel入门范例.[详细]
-
php模拟reffer破解防止盗用图片
所属栏目:[PHP教程] 日期:2022-02-24 热度:121
当我们需要调用其他网站图片的时候,其他网站的图片往往显示一个不显示,但是单独放在浏览器访问,却又可以。 php模拟reffer破解防止盗用图片: ?php error_reporting(0); $HOST = java-er.com; require class/db.php; header(Content-type: image/png); //Cu[详细]
-
深入分析php表单加入Token防止重复提交的例子
所属栏目:[PHP教程] 日期:2022-02-24 热度:130
Token浅谈:Token,就是令牌,最大的特点就是随机性,不可预测。一般黑客或软件无法猜测出来。 那么,Token有什么作用?又是什么原理呢? Token一般用在两个地方防止表单重复提交、anti csrf攻击(跨站点请求伪造)。 两者在原理上都是通过session token来实[详细]
-
PHP中的use关键字及文件的加载详解
所属栏目:[PHP教程] 日期:2022-02-24 热度:90
可能在大家经常使用框架,写一个Controller或者Model的时候,写了好多use,但是并没有写文件加载的代码,就以为use可以进行文件的自动加载了。 详细介绍: 其实,现在流行的php框架,都是基于MVC模式的,大量的使用了命名空间,以提高程序的灵活性。那么框架[详细]
-
怎么利用PHP抓取百度阅读
所属栏目:[PHP教程] 日期:2022-02-24 热度:162
本文实例讲述了PHP编程实现的TCP服务端和客户端功能。分享给大家供大家参考,具体如下: 1、修改php.ini,打开extension=php_sockets.dll 2、服务端程序SocketServer.php ?php //确保在连接客户端时不会超时 set_time_limit(0); //设置IP和端口号 $address =[详细]
-
简单分析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{ fu[详细]
-
使用PHP访问RabbitMQ消息队列的方法示例
所属栏目:[PHP教程] 日期:2022-02-24 热度:199
本文实例讲述了使用PHP访问RabbitMQ消息队列的方法,分享给大家供大家参考,具体如下. 扩展安装 PHP访问RabbitMQ实际使用的是AMQP协议,所以我们只要安装epel库中的php-pecl-amqp这个包即可 rpm -ivh http://mirror.neu.edu.cn/fedora/epel/6/x86_64/epel-rele[详细]
-
PHP多进程之pcntl_fork的实例解析
所属栏目:[PHP教程] 日期:2022-02-24 热度:156
PHP多进程编之pcntl_fork的实例详解 其实PHP是支持并发的,只是平时很少使用而已。平时使用最多的应该是使用PHP-FMP调度php进程了吧。 但是,PHP的使用并不局限于做Web,我们完全也可以使用PHP来进行系统工具类的编程,做监控或者是运维。在使用这些方向的时[详细]
-
php PDO实现的事务回滚实例
所属栏目:[PHP教程] 日期:2022-02-24 热度:69
$servername=localhost; $username=root; $password=admin; $dbname=test; try{ $conn=new PDO(mysql:host=$servername;dbname=$dbname,$username,$password); $conn-setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION); //开始事务 $conn-beginTransa[详细]
-
简单谈谈PHP里的trait
所属栏目:[PHP教程] 日期:2022-02-24 热度:69
前言:之前的一个同事换工作,在面试被问到了 PHP 的 trait 。因为没用过, 所以没答好,我大概是用过几次的,想了想整理了以下的总结。 trait:trait 是在一些类(Class)的应该具备的特定的属性或方法,而同父级的另外一些类应该避免包含这些属性和方法情况下使[详细]
-
php怎么安装redis扩展?redis安装以及php扩展的说明
所属栏目:[PHP教程] 日期:2022-02-24 热度:199
启动安装:http://elain.blog.51cto.com/3339379/705846 redis下载:ps://github.com/nicolasff/phpredis/downloads https://github.com/nicolasff/phpredis/downloads 多台服务安装:http://www.vquickphp.com/?a=blogviewid=30 开机加自启动:echo redis-serve[详细]
-
php如何运行存储过程?php存储过程调用实例代码
所属栏目:[PHP教程] 日期:2022-02-24 热度:197
代码如下: //比如要调用的存储过程为gxtj(a,b) $db=new mysqli(localhost,ssss,aaaaa,bbbb); mysqli_query($db,SET NAMES utf8); $result=$db-query(call gxtj($year,$jd)); // gxtj是mysql的存储过程名称 [color=gray][/color] while( $row = $result-fetch[详细]
-
php使用imagick给图片加水印的办法
所属栏目:[PHP教程] 日期:2022-02-24 热度:191
?php $image = new Imagick(); $image-readImage(original.jpg); $watermark = new Imagick(); $watermark-readImage(/data/mark.png); // how big are the images? $iWidth = $image-getImageWidth(); $iHeight = $image-getImageHeight(); $wWidth = $wate[详细]
-
php在新浪云中使用imagick的办法
所属栏目:[PHP教程] 日期:2022-02-24 热度:110
php在新浪云中使用imagick生成缩略图并上传到Storage的方法 ?php //缩略图 $tmpFile =http://Cuoxin.com/original.jpg ; list($width, $height) = getimagesize($tmpFile); // resize if necessary if ($width = 550 $height = 550) { $image = new Imagick([详细]
-
php版新浪支付接口之新建接口记录
所属栏目:[PHP教程] 日期:2022-02-24 热度:83
在使用新浪支付接口的时候,需要进行一个接口的创建,刚刚由夏日博客新建的一个新浪接口,整合的是方维P2P网贷系统,下面这个接口还是比较简单的,只是一个解绑认证信息的接口,也就是解绑我们在新浪上面的身份证等信息,操作步骤如下,仅供夏日参考学习使用[详细]
