php实现网站使用插件机制的方法

php实现网站使用插件机制的方法
* @subpackage Libraries * @category Libraries * @author Saturn * @link http://www.cnsaturn.com/ */ class PluginManager { /** * 监听已注册的插件 * * @access private * @var array */ private $_listeners = array(); /** * 构造函数 * * @access public * @return void */ public function __construct() { #这里$plugin数组包含我们获取已经由用户激活的插件信息 #为演...

提高php执行效率的50个细节

提高php执行效率的50个细节
1、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量, 单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的”函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。 2、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。 3、$row[‘id’] 的速度是$row[id]的7倍。 4、echo 比 prin...

PHP未来的一些可能

PHP未来的一些可能
摘要:德国开放源码软件开发者Frank Karlit-schek主导的ownCloud项目,是目前采用PHP编写的最大型开源项目之一。对于PHP的未来,他提出了自己的想法。 德国开放源码软件开发者Frank Karlit-schek主导的ownCloud项目,是目前采用PHP编写的最大型开源项目之一。他在谈及为何选择PHP时,提到以下几点。   普遍性:ownCloud的目的是让所有人来托管自己的云服务器。而PHP目前广泛用于Web服务器、操作系统...

API接口安全——加密

API接口安全——加密
客户端和服务端设置一个公共密钥$key = 'www.imdupeng.cn'; 假设接口需要$a、$b、c三个参数 例如你的api地址是http://www.example.com/api.php 需要接受的参数有a,b,c三个,那么可以加一个验证token。 例如: $token=sha1($a.$b.$c.$key); 然后访问使用http://www.imdupeng.cn/api.php?a=1&b=2&c=3&token=xxxx api.php接收到a,b,c,token参数后,根据a,b,c与约定好的key,计算sha1($a.$b.$c.$ke...

ThinkPHP5新手教程(二)——安装

ThinkPHP5新手教程(二)——安装
ThinkPHP 5 系列文章: 1、《Thinkphp5新手教程(一)—— 介绍》 2、《ThinkPHP5新手教程(二)—— 安装》     ThinkPHP5安装方式: 1、直接下载ThinkPHP程序;(官网下载、github下载); 2、从git导入安装;(本文介绍这种方式) 环境:Eclipse安装好git组件 安装过程: 第一步、打开eclipse,选择文件->导入 第二步、选择Git->Project from Git 第三部、选择Clone URI 第四部、填写Think...

Thinkphp5新手教程(一)——介绍

Thinkphp5新手教程(一)——介绍
ThinkPHP官网:http://www.thinkphp.cn/ ThinkPHP 5手册:http://www.kancloud.cn/thinkphp/thinkphp5-guide ThinkPHP5 Github:https://github.com/top-think/think thinkphp5.0.0 RC1介绍 ThinkPHP5在保持快速开发和大道至简的核心理念不变的同时,PHP版本要求提升到5.4,对已有的CBD模式做了更深的强化,优化核心,减少依赖,基于全新的架构思想和命名空间实现,是ThinkPHP突破原有框架思路的颠覆之作,...

PHP——非对称加密

PHP——非对称加密
非对称加密: 公钥加密只有私钥能解,私钥加密只有公钥能解。   demo如下: <?php /** * 使用openssl实现非对称加密 * * @since 2015-11-10 */ class Rsa { /** * 私钥 * */ private $_privKey; /** * 公钥 * */ private $_pubKey; /** * 保存文件地址 */ private $_keyPath; /** ...

ThinkPHP集成Seaslog——高性能日志系统

ThinkPHP集成Seaslog——高性能日志系统
本文内容 1、为什么需要日志功能呢 2、学会使用Seaslog 3、在实际项目中使用Seaslog 一、什么是日志系统 1、记录系统运行的信息; 2、系统日志、应用日志、安全日志; 二、为什么需要日志功能 1、了解系统运行情况; 2、记录用户操作信息; 3、搜集数据; 三、为什么选择Seaslog 1、高性能; Seaslog是C语音开发的,自带缓冲池,日常先写入内存,达到一定量才一次性写入文件中,不用频繁的写入日志。 2、无...

正则表达式

正则表达式
正则表达式到底是什么东西? 字符是计算机软件处理文字时最基本的单位,可能是字母,数字,标点符号,空格,换行符,汉字等等。字符串是0个或更多个字符的序列。文本也就是文字,字符串。说某个字符串匹配某个正则表达式,通常是指这个字符串里有一部分(或几部分分别)能满足表达式给出的条件。 在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些...

PHP缓存类——简洁实用的完整实例

PHP缓存类——简洁实用的完整实例
缓存的应用对于php大型项目的开发来说至关重要,需要的朋友可以参考下。 下例是一个简洁实用的PHP缓存类,可用来检查缓存文件是否在设置更新时间之内、清除缓存文件、根据当前动态文件生成缓存文件名、连续创建目录、缓存文件输出静态等功能。对于采用PHP开发CMS系统来说,离不开对缓存的处理,合理利用好缓存可有效的提高程序执行效率。 PHP缓存类代码: <?php /* * 缓存类 cache */ class cache { /...