
php
文章平均质量分 66
load_life
这个作者很懒,什么都没留下…
展开
-
PHP5设置时区方法大全
装上PHP5后你会发现这样的问题$atime=date("Y-m-d H:i:s");echo $atime;?>输出:2006-05-16 06:36:06现在几点了?/我的是14:36这是为什么捏?原因是假如你不在程序或配置文件中设置你的服务器当地原创 2011-09-28 11:33:03 · 627 阅读 · 0 评论 -
针对配置文件操作 PHP最常用的四个ini函数
php的配置函数就是几个ini_*的函数,主要是针对配置文件的操作,其实就四个函数:ini_get、ini_set、ini_get_all、ini_restore。个人感觉最有用的就是ini_set和ini_get。* ini_get():获取配置文件的选项值这个函数相信很多人都原创 2011-09-28 11:34:06 · 435 阅读 · 0 评论 -
PHP curl实现异步的http请求
PHP是不支持线程的,但是我们有总想并行地干一些事情,比如,同时执行多个http的请求,如果使用多进程的话,有两个问题:1. 不能跨平台2. 创建进程的开销似乎大了些于是,我们就想到了使用异步来达到类似并行的效果,曾经早就写程序实现过,不过是很初级的,现在curl帮我转载 2011-09-28 11:37:04 · 6623 阅读 · 0 评论 -
php curl_init函数用法
使用PHP的cURL库可以简单和有效地去抓网页。你只需要运行一个脚本,然后分析一下你所抓取的网页,然后就可以以程序的方式得到你想要的数据了。无论是你想从从一个链接上取部分数据,或是取一个XML文件并把其导入数据库,那怕就是简单的获取网页内容,cURL 是一个功能强大的PHP库。原创 2011-09-28 11:30:47 · 415 阅读 · 0 评论 -
PHP正则表达式的几则使用技巧
PHP正则表达式主要用于字符串的模式分割、匹配、查找及替换操作。使用正则表达式在某些简单的环境下可能效率不高,因此如何更好的使用PHP正则表达式需要综合考虑。我的PHP正则入门,是起源于网上的一篇文章,这篇文章由浅入深的阐述了PHP正则表达式使用的方法,我觉得是一个很好的入门原创 2011-09-28 11:32:06 · 378 阅读 · 0 评论 -
php定时计划任务介绍
最近帮朋友做一个小说采集程序,虽然现在可以实现整部小说全部采集的功能,但是却不能够自动的去采集.需要人工手动执行.所以就搜索有关这方面的资料,没想到PHP还真的可以实现,可以自动定时获取,那么人工运行可执行页面也就省下来了。ignore_user_abort();函数搭配se转载 2011-09-28 11:33:34 · 420 阅读 · 0 评论 -
PHP中插件机制的一种实现方案
这篇文章的出发点是我对插件机制的理解,及其在PHP中的实现。此方案仅是插件机制在PHP中的实现方案之一,写下来和大家分享,欢迎大家一起讨论。插件,亦即Plug-in,是指一类特定的功能模块(通常由第三方开发者实现),它的特点是:当你需要它的时候激活它,不需要它的时候禁用/删除原创 2011-09-28 11:34:35 · 364 阅读 · 0 评论 -
在 PHP 中养成 7 个面向对象的好习惯
如果您尚未打算用 OO 原则创建应用程序,则使用 PHP 的面向对象(OO)的语言特性,这 7个习惯将帮助您开始在过程编程与 OO 编程之间进行转换。在 PHP 编程早期,PHP 代码在本质上是限于面向过程的。过程代码的特征在于使用过程构建应用程序块。过程通过允许过程之间的调转载 2011-09-28 11:35:55 · 428 阅读 · 0 评论 -
php获取当前类名函数名的方法
今天分析了一下THINKPHP框架的模板自动加载功能,其中运用到了获取到当前类与方法。所以查了些资料,在此和大家分享分享__FUNCTION__ 函数名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写)。在 PHP 4中该值总是原创 2011-09-28 11:29:33 · 727 阅读 · 0 评论 -
抽象类与接口的区别
抽象类就是将类似或相似的部分给抽取出来,这句话看上去很搞笑,其实它说出了抽象类的真理。你可能会说”我不是可以重写一个公共类,然后我实例化这个公共类,调用相同的方法就可以了”,这里是可以,实际上抽象类的工作也就是这个,不过他省去了你实例化的这个步骤,并且你还可以生载这个方法原创 2011-09-28 11:30:09 · 513 阅读 · 0 评论 -
CI钩子
最近研究CI的Session无意中发现CI的钩子非常强劲和灵活。之前学习ZendFramework感觉嵌入视图非常不错,今天就用CI的钩子实现一个准备工作,个人建议最好看一下CI的大体运行流程,打开config.php修改$config['log_threshold']=原创 2011-09-28 11:35:09 · 2528 阅读 · 0 评论 -
PHP中获取文件扩展名的N种方法
从网上收罗的,基本上就以下这几种方式:第1种方法:function get_extension($file){ substr(strrchr($file, '.'), 1);}第2种方法:function get_extension($file)原创 2011-09-28 11:36:32 · 642 阅读 · 2 评论 -
ecshop 函数列表大全
所有函数功能说明:lib_time.phpgmtime()P: 获得当前格林威治时间的时间戳/$0server_timezone()P: 获得服务器的时区/$0local_mktime($hour = NULL , $minute= NULL, $se转载 2011-09-28 11:38:07 · 436 阅读 · 0 评论 -
php获取文件扩展名
最近看到网友分享的一段代码,使用php获取文件扩展名的,这个问题是一个比较经典的问题,于是搜了一些相关文章,然后总结评测如下:第一种:123456789101112131415//获取文件扩展名//su转载 2011-10-10 14:42:45 · 698 阅读 · 0 评论 -
PHP底层工作原理
近搭建服务器,突然感觉lamp之间到底是怎么工作的,或者是怎么联系起来?平时只是写程序,重来没有思考过他们之间的工作原理:PHP底层工作原理图1 php结构从图上可以看出,php从下到上是一个4层体系①Zend引擎Zend整体用纯c实现转载 2011-10-12 21:10:45 · 363 阅读 · 0 评论 -
PHP和SOCKET
◇ Socket基础◇ 产生一个服务器◇ 产生一个客户端在这一章里你将了解到迷人而又让人容易糊涂的套接字(Sockets)。Sockets在PHP中是没有充分利用的功能。今天你将看到产生一个能使用客户端连接的服务器,并在客户端使用socket进行连接,服务器端将详细转载 2011-10-13 14:24:10 · 384 阅读 · 0 评论 -
PHP中spl_autoload_register函数的用法
spl_autoload_register(PHP 5 >= 5.1.2)spl_autoload_register — 注册__autoload()函数说明bool spl_autoload_register ([ callback $autoload_function ] )将函数注册到SPL __autoload函数栈中。如果该栈中的函数尚未激活,则激活它们。如果在你转载 2011-10-20 11:21:50 · 555 阅读 · 0 评论 -
50个提高PHP编程效率的方法
0、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。 2、$row[’id’]的速度是原创 2011-11-02 09:42:30 · 454 阅读 · 0 评论 -
ActiveRecord 模型
来源:http://zhaocz.blog.51cto.com/542576/307894ActiveRecord是什么:1. 每一个数据库表对应创建一个类.类的每一个对象实例对应于数据库中表的一行记录; 通常表的每个字段在类中都有相应的Field;2. ActiveRecord同时负责把自己持久化. 在ActiveRecord中封装了对数据库的访问, 即CRUD; 3. Ac转载 2011-11-07 14:37:33 · 435 阅读 · 0 评论 -
DZ随记
外部调用论坛数据登录后台--门户---模块管理---数据调用原创 2011-12-21 10:58:40 · 441 阅读 · 0 评论 -
如何设置一个严格30分钟过期的Session
今天在我的微博(Laruence)上发出一个问题: 我在面试的时候, 经常会问一个问题: “如何设置一个30分钟过期的Session?”, 大家不要觉得看似简单, 这里面包含的知识多着呢, 特别适合考察基本功是否扎实, 谁来回答试试? 呵呵 为什么问这个问题呢? 1. 我在Twitter上看到了有人讨论这个问题, 2 想起来我经常问这个问题, 所以~~ 呵呵,转载 2012-01-20 10:28:14 · 365 阅读 · 0 评论 -
PHPCMS 2008中tag内容标签的解析过程
我们按照系统解析的过程来走一遍。。。在phpcms中,和uchome和discuz是一样的,解析模板要调用的函数是template(),此函数位于include/global.func.php文件中,在这个函数中,先按照传进来的参数生成一个缓存的文件名如:view sourceprint?1.$compiledtplfile= TPL_CACHEPATH . $mo转载 2012-02-01 11:26:15 · 765 阅读 · 0 评论 -
PHP在循环内外实例化类在占用内存上有很大的区别
关于php类的实例化和内存的关系,可以这么说:只要有一个new 关键字就是创建一个对象,创建一个对象就是在内存中分配了一个空间 ,那么OK,看代码。view sourceprint?01.02.classABC{03.public$numBox = array();04.publicfunction ddd(){05.for($i=1;$i$转载 2012-02-01 11:39:31 · 1492 阅读 · 2 评论 -
thinkphp2.1自定义标签的使用(官方文档不够详细)
下载新版thinkphp2.1 解压,有个doc文件夹,里面有Thinkphp2.1《自定义标签示例说明.pdf》。1,建立标签解析类,如lib/TagLib/TagLibXXX.class.php2,建立加载加载文件 conf/taglis.php3,模版中使用。官方文档有的内容我就不多讲了。我说一下TagLibArticle.class.php这个文件。代码结构可以分为转载 2012-02-01 12:02:18 · 755 阅读 · 0 评论 -
PHP的缓存你了解多少?深入探索PHP缓存原理及使用
PHP由于它的强大和可伸缩性,近几年来得到长足的发展,PHP相比传统的ASP网站,在速度上有绝对的优势,想mssql转6万条数据PHP如需要40秒,ASP不下2分钟.但是,由于网站的数据越来越多,我们渴求能更快速的调用数据,不必要每次都从数据库掉,我们可以从其他的地方,比方一个文件,或者某个内存地址,这就是PHP的缓存技术,也就是Cache技术。 分析深入 一般来说,缓存的目的是把数据转载 2012-02-01 23:12:48 · 367 阅读 · 0 评论 -
ThinkPHP源码剖析
我本来是打算用视频讲解的,视频中会分析ThinkPHP源码中的设计模式。 设计模式本身就是是否理论性的东西。而我觉得,视频教程应该注重演示操作性的东西,估计一个视频教程全是理论的话, 很多人看着看着就会睡着的。所以,我特意在视频的开始引入一个实例,通过实例说明分析ThinkPHP源码的重要性,说明PHP设计模式好处。 但是自我感觉效果不怎么好, 这个题材,本身理论性太强。而我理转载 2012-02-01 11:56:32 · 1421 阅读 · 0 评论 -
OOP中__clone(),__toString(),__autoload(),__destruct的使用
有的时候我们需要在一个项目里面,使用两个或多个一样的对象,如果你使用“new”关键字重新创建对象的话,再赋值上相同的属性,这样做比较烦琐而且也容易出错,所以要根据一个对象完全克隆出一个一模一样的对象,是非常有必要的,而且克隆以后,两个对象互不干扰。在PHP5中我们使用”clone”这个关键字克隆对象;view sourceprint?01.02.clas转载 2012-02-01 22:15:47 · 329 阅读 · 0 评论 -
发布一个纯PHP的中文关键字自动提取工具
周末的时候看到腾讯的空间里面写日志的时候能自动提取关键字,感觉这个功能非常的好,于是我自己准备也写一个。因为,提取关键字,肯定要涉及分词,现在的分词算法,最好的估计是统计算法,但是实现稍微复杂一点,用PHP的话,性能往往也不够。于是,我一切从简,争取星期天一天能写完这个工具。我翻了一下最简单的分词,好像就是向前最大匹配。而且如果字典好的话,据说准确率还挺高的。当然,我没有什么好字典,从中科院的转载 2012-02-01 22:41:47 · 2444 阅读 · 0 评论 -
关于PHP判断浏览器语言
02.if ($_SERVER['HTTP_ACCEPT_LANGUAGE']=='zh-CN' ||$_SERVER['HTTP_ACCEPT_LANGUAGE']=='zh-cn'){03. 04.echo("<meta http-equiv='refresh' content = '0;URL = http://zh-cn.xcomm.cn'>;");05.转载 2012-02-01 22:48:23 · 478 阅读 · 0 评论 -
CI配置SMARTY
1、到相应站点下载Smarty的源码包;2、将源码包里面的libs文件夹copy到CI的项目目录下面的libraries文件夹下,并重命名为Smarty;3、在项目目录的libraries文件夹内新建文件Cismarty.php,里面的内容如下:view sourceprint?01.02.if(!defined('BASEPATH')) EXIT(转载 2012-02-01 23:15:39 · 792 阅读 · 1 评论 -
CI路由剖析
CI 的路由功能是在CodeIninter.PHP文件中开始执行的。1:在核心文件CodeIninter.php中,加载完路由操作类Router之后,立刻就执行了$RTR->_set_routing();该方法主要的功能是:a:在初始化路由类的时候加载了配置类Config,和URI操作类两个文件b:首先判断是否开启了:enable_query_strings,如果是,那么执行以下:转载 2012-02-01 23:18:18 · 1064 阅读 · 0 评论 -
CI执行过程剖析
1、CI 中index.php文件的主要功能是:定义项目的相关路径常量,最后,加载CodeIninter.php文件,后面的事情交给他处理2、在CodeIninter.php文件中,主要功能有:a:加载CI核心的公共文件Common.php,内置的方法在系统全局中都会被用到,特别是:&load_class(),is_loaded(),&get_config(),config_item()函转载 2012-02-01 23:19:55 · 479 阅读 · 0 评论 -
CodeIgniter(CI)框架加载流程及结构分析
入口文件入口文件主要完成下列工作:1. 指定 CodeIgniter 框架所在目录;2. 定义 APPPATH 常量,指示应用程序文件根目录;3. 载入 codeigniter/CodeIgniter.php 文件,启动框架。codeigniter/CodeIgniter.php 文件这个文件是 CodeIgniter 的基本文件,主要完成初始化 CodeIgniter 框架和启动转载 2012-02-01 23:23:53 · 872 阅读 · 0 评论 -
CI中DB对象剖析
CI中使用DB类,只要你在你的控制器中使用了这句话:$this->load->database();那么你就可以在你的控制器中的任何地方或者是在模型的任何地方都可以使用$this->db->function()来操作数据库了。那么CI 是怎么样做到这一步的呢?下面一一道来:首先,我做过测试,在$this->load->database()这句话之前你要是打印$this->db的话,是没有任何数转载 2012-02-01 23:25:28 · 1332 阅读 · 0 评论 -
CI学习总结
CI学习总结1、什么是框架?框架就是一个没写完的网站,提供了一些基础的功能,比如安全检查,表单难,数据库连接等。其它人可以在上面开发自己的东西。框架把一些烦琐重复而没有创造性的工作帮你做好,而让你从事具有创造性的工作。不过使用框架对执行速度有影响。2、什么是CodeIgniter?CodeIgniter是一个小巧的php框架,名称由两个单词组成,code代码Igniter点火器,连转载 2012-02-01 23:26:28 · 966 阅读 · 0 评论 -
CI入门 : 一些建议和最佳实践
原文地址 http://codeigniter.com/forums/viewthread/125687/1、 使用哪一个版本? 1.7.2 or 2.0CodeIgniter 2.0 目前虽然还没有最终发布,但它已经非常稳定,并且 EllisLab 公司已经声明不会有很大的变动,只要是修正一些 BUG,许多人认为 2.0 比 1.7.2 更加稳定,Phil Sturgeon 在他的博客中转载 2012-02-01 23:28:41 · 778 阅读 · 0 评论 -
OOP中__SET() __GET() __ISSET() __UNSET()四个方法的应用
一般来说,总是把类的属性定义为private,这更符合现实的逻辑。但是, 对属性的读取和赋值操作是非常频繁的,因此在PHP5中,预定义了两个函数”__get()”和”__set()”来获取和赋值其属性,以及检查属性的”__isset()”和删除属性的方法”__unset()”。”__set()”和“__get()”这两个方法不是默认存在的, 而是我们手工添加到类里面去的,像构造方法(__con转载 2012-02-01 23:32:27 · 1432 阅读 · 0 评论 -
保存到桌面的php代码
$Shortcut = "[DEFAULT]BASEURL=http://www.baidu.com/[InternetShortcut]URL=http://www.baidu.com/Modified=B07A55D9386FCA01CAIconFile=http://www.baidu.com/favicon.icoIconIndex=1";Header(转载 2012-02-03 13:44:44 · 1554 阅读 · 0 评论 -
PHP简单实现中文分词全文索引实例(tag专题)
相信很多人都研究过MYSQL的中文全文分词索引问题,目前MYSQL不支持中文全文索引,无奈~~~网上找了N多关于PHP+MYSQL中文全文索引的文章都没有一个好用的,对于一般的菜鸟根本不知道怎么使用,PHP中文分词有DDEDE的,DEDE的词库不是很强大,还算可以用吧!还有一个是《SCWS - 简易中文分词系统》这个目前对于一般菜鸟根本不知道怎么用,虽然有人编译了Windows版的,但安装转载 2012-02-02 11:37:38 · 2331 阅读 · 0 评论 -
strtotime 深入理解应用实例
PHP strtotime函数将任何英文文本的日期时间描述解析为Unix时间戳[将系统时间转化成unix时间戳],下面是strtotime有关参数说明:语法strtotime(time,now)参数描述time规定要解析的时间字符串。now用来计算返回值的时间戳。如果省略该参数,则使用当前时间。下面是后一种方式的可使用转载 2012-02-02 11:42:47 · 503 阅读 · 0 评论