
php
_zZ小春
hello word
展开
-
serialize序列化和json
【序列化的概念】序列化是将对象状态转换为可保持或可传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。将对象的状态信息转换为可以存储或传输的窗体的过程。 在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。通常,对象实例的所有字段都会被序列化,这意味转载 2016-05-24 15:41:47 · 8161 阅读 · 0 评论 -
PHP + Redis 实现一个简单的twitter
转自 http://www.cnblogs.com/jackluo/archive/2013/06/27/3158974.html原文位于Redis官网http://redis.io/topics/twitter-cloneRedis是NoSQL数据库中一个知名数据库,在新浪微博中亦有部署,适合固定数据量的热数据的访问。作为入门,这是一篇很好的教材,简单描述了如转载 2016-05-18 16:18:33 · 699 阅读 · 0 评论 -
php操作memcache的使用【转】
转自 http://www.cnblogs.com/whoamme/p/3437146.html1.简介Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。它可以应对任意多个连接,使用非阻塞的网络IO。由于它的工作机制是在内存中开辟一块空间,然后建立一个HashTabl转载 2016-05-18 15:40:14 · 419 阅读 · 0 评论 -
深入 PHP 面向对象、模式与实践
转自:http://blog.jobbole.com/97315/1 语法1.1 基础语法clone需要操作原对象,但又不想影响原对象.PHP1$K_back = clone $K;基本数据类型和数组都为真复制,即为真副本,当属性为对象时,为假复制,改变副转载 2016-05-23 16:45:05 · 911 阅读 · 0 评论 -
php魔术方法和魔术变量
PHP把所有以__(两个下划线)开头的类方法当成魔术方法。所以你定义自己的类方法时,不要以 __为前缀。 1、__construct()当实例化一个对象的时候,这个对象的构造方法将首先被调用;我们知道php5对象模型和类名相同的函数是类的构造函数,那么如果同时定义构造函数和__construc()方法的话,php5会默认调用__contruct()而不会调用同类名函数,所以__co转载 2016-07-21 17:55:22 · 557 阅读 · 0 评论 -
更快的方式实现 PHP 数组去重
概述使用PHP的array_unique()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的数组。这个函数大多数情况下都能工作得很好。但是,如果你尝试在一个大的数组里使用array_unique()函数,它会运行地慢一些。有一个比较好而且更快的函数array_flip()来替代使用array_unique()函数来创建唯一的数组。这个魔法般的函转载 2016-08-12 15:06:54 · 347 阅读 · 0 评论 -
双机高可用、负载均衡、MySQL(读写分离、主从自动切换)架构设计
架构简介前几天网友来信说帮忙实现这样一个架构:只有两台机器,需要实现其中一台死机之后另一台能接管这台机器的服务,并且在两台机器正常服务时,两台机器都能用上。于是设计了如下的架构。此架构主要是由keepalived实现双机高可用,维护了一个外网VIP,一个内网VIP。正常情况时,外网VIP和内网VIP都绑定在server1服务器,web请求发送到server1转载 2016-08-09 17:12:21 · 2203 阅读 · 0 评论 -
PHP 漏洞与代码审计
1.xss + sql注入其中占大头的自然是XSS与SQL注入,对于框架类型或者有公共文件的,建议在公共文件中统一做一次XSS和SQL注入的过滤。写个过滤函数,可由如下所示:$_REQUEST = filter_xss($_REQUEST);$_GET = filter_xss($_GET);$_POST = fi转载 2016-07-06 14:17:53 · 358 阅读 · 0 评论 -
PHP 安全性漫谈 Linux+Apache+Mysql+PHP
原文出处: 彭长霖 转自 http://blog.jobbole.com/99448/本文所讨论的安全性环境是在Linux+Apache+Mysql+PHP。超出此范围的安全性问题不在本文范畴之内一、apache server安全性设置1、以Nobody用户运行一般情况下,Apache是由Root 来安装和运行的。如果Apache Server进程具有转载 2016-05-21 16:05:46 · 645 阅读 · 0 评论 -
xss攻击入门
转自 http://www.cnblogs.com/bangerlee/archive/2013/04/06/3002142.htmlxss表示Cross Site Scripting(跨站脚本攻击),它与SQL注入攻击类似,SQL注入攻击中以SQL语句作为用户输入,从而达到查询/修改/删除数据的目的,而在xss攻击中,通过插入恶意脚本,实现对用户游览器的控制。xss攻击可以分转载 2016-05-21 11:34:04 · 554 阅读 · 0 评论 -
看看PHP迭代器的内部执行过程以及用PHP迭代器来实现一个斐波纳契数列
下面我们来了解如何实现一个自定义的迭代器,然后再开始慢慢理解迭代器的内部工作原理。先来看一个官方的例子:class myIterator implements Iterator { private $position = 0; private $array = array( "first_element", "second_element",转载 2016-07-07 11:41:57 · 494 阅读 · 0 评论 -
PHP引用(&)各种使用方法实例详解
php的引用(就是在变量或者函数、对象等前面加上&符号),在PHP 中引用的意思是:不同的名字访问同一个变量内容。与C语言中的指针是有差别的.C语言中的指针里面存储的是变量的内容,在内存中存放的地址。1.变量的引用PHP 的引用允许你用两个变量来指向同一个内容复制代码代码如下: $a="ABC"; $b =&$a; echo $a;//转载 2016-07-06 18:07:14 · 3223 阅读 · 0 评论 -
10个值得深思的PHP面试问题
Q1第一个问题关于弱类型$str1 = 'yabadabadoo';$str2 = 'yaba';if (strpos($str1,$str2)) { echo "\"" . $str1 . "\" contains \"" . $str2 . "\"";} else { echo "\"" . $str1 . "\" does not contain \""转载 2016-07-06 16:47:29 · 478 阅读 · 0 评论 -
你必须了解的Session的本质
【转载】51CTO.COM博文有一点我们必须承认,大多数web应用程序都离不开session的使用。这篇文章将会结合php以及http协议来分析如何建立一个安全的会话管理机制。我们先简单的了解一些http的知识,从而理解该协议的无状态特性。然后,学习一些关于cookie的基本操作。最后,我会一步步阐述如何使用一些简单,高效的方法来提高你的php应用程序的安全性以及稳定行。转载 2016-05-24 17:35:24 · 1300 阅读 · 0 评论 -
mysql存储过程详解以及PHP调用MYSQL存储过程实例
mysql存储过程详解1. 存储过程简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。一个存储过程是一个可编程的函数,它在数据库中创建并保存转载 2016-05-31 16:06:40 · 11626 阅读 · 2 评论 -
HandlerSocket简介以及php使用handlersocket
HandlerSocket作者:Eugene ,发布于2012-11-9 目录:HandlerSocket的原理HandlerSocket的优势和缺陷阐述HandlerSocket的性能测试HandlerSocket的原理HandlerSocket的应用场景:MySQL自身的局限性,很多站点都采用了MySQ转载 2016-06-01 11:30:19 · 764 阅读 · 0 评论 -
处理PHP中字符串的常用操作及函数
1. 确定一个字符串的长度这是最为常见和基础的例子,对于确定一个字符串的长度,我们应该使用strlen()函数,比如要获取下面字符串$text 的长度:$text = "sunny day"; $count = strlen($text); // $count = 9 2. 截取文本来创建一个概要新闻性质的网站通常会在发布正文中的开头部分截取大约20转载 2016-06-01 18:34:24 · 587 阅读 · 0 评论 -
探讨PHP类的封装与继承
封装 把成员方法和成员属性封装到类中,隐藏属性和方法实现的细节,通过public、protected、private等限定类成员的访问权限,数据被保护在内部,只通过被授权的成员方法才可以操作,尽可能的对成员进行封装。public:方法或者属性在任何作用域下都可以访问到,而且是默认的,如果没有为一个属性或方法指定访问修饰符,它将是public。protected:本类转载 2016-06-02 11:04:32 · 278 阅读 · 0 评论 -
PHP下富文本HTML过滤器:HTMLPurifier使用教程
一、如何在程序中调用HTMLPurifier1、一般性调用根据官方的文档中,我们可以要在PHP程序中调用HTMLPurifier,需要先将HTMLPurifier.auto.php引入到程序文件中,具体方法如下:require_once '/path/to/HTMLPurifier.auto.php';2、将HTMLP转载 2016-05-21 11:45:56 · 1482 阅读 · 0 评论 -
PHP类中的重要知识点
1. __construct: 内置构造函数,在对象被创建时自动调用。见如下代码:phpclass ConstructTest { private $arg1; private $arg2; public function __construct($arg1, $arg2) { $this->arg1 = $arg1;转载 2016-06-03 16:39:58 · 2066 阅读 · 0 评论 -
PHP编程中10个最常见的错误
错误1:foreach循环后留下悬挂指针在foreach循环中,如果我们需要更改迭代的元素或是为了提高效率,运用引用是一个好办法:$arr = array(1, 2, 3, 4);foreach ($arr as &$value) {$value = $value * 2;}// $arr is now a转载 2016-07-11 15:55:47 · 616 阅读 · 0 评论 -
SAE中php预定义常量引入位置
在sae中搭建了一个wordpress项目,查看配置文件时发现了几个常量/** WordPress 数据库的名称 */define('DB_NAME', SAE_MYSQL_DB);/** MySQL 数据库用户名 */define('DB_USER', SAE_MYSQL_USER);/** MySQL 数据库密码 */define('DB_PASSWORD', SAE_MYS原创 2016-07-06 15:45:14 · 664 阅读 · 0 评论 -
PHP Socket 编程过程详解
Socket用于进程间通信。进程间通信通常基于客户端—服务端模型。此时,客户端—服务端是可以彼此交互的应用程序。客户端和服务端之间的交互需要连接。Socket编程负责的就是为应用程序之间建立可进行交互的连接。在本文中,我们将学习如何用PHP创建一个简单的客户端—服务端。我们还将学习如何客户端应用程序如何发送消息到服务端,以及如何从服务端接受消息。◆使用代码目的:开发转载 2016-10-13 10:38:32 · 414 阅读 · 0 评论