快捷搜索:   服务器  PHP  IIS  安全  linux 安全

模板引擎正则表达式调试小技巧

站长交易(http://jy.chinaz.com)友情链接交换 企业建站找313建站大师,招分销商 很久没有遇上PHP难题了,这次正则问题占了一点时间,还是老问题最大回溯、递归限制问题。学习透之后其实并不难修改调试有这类问题的正则。主要是以下几点。 基于正则表达式替换的模板引擎很...

php_curl扩展模块无法正常加载的处理方法

站长交易(http://jy.chinaz.com)友情链接交换 企业建站找313建站大师,招分销商 好不容易通过自己的学习动手写了一套网站自动收录的程序,正当我把源码都传到服务器作演示和大家共享的时候,忽然发现网址无法正常添加,提示错误Fatal error:Call to undefined function cu...

说说Shell在代码重构中的应用

站长交易(http://jy.chinaz.com)友情链接交换 虚拟主机评测+IDC导航=IDC123.COM 代码重构( Code refactoring )有时是很枯燥的,字符串替换之类的操作不仅乏味,而且还容易出错,好在有一些工具可用,以PHP为例,如: Rephactor , Scisr 等等,不过现成的工具往往意味着不够灵活,所以今天我要说说Shell在代码重构中的应用。 先来个简单的,假设我们要把PHP文件中的foo_bar全都替换成fooBar,那么可以如下: 方法一,使用Sed: sh...

PHP操作MongoDB时的整数问题及对策

站长交易(http://jy.chinaz.com)友情链接交换 虚拟主机评测+IDC导航=IDC123.COM 本文所说的 整数问题 ,其实并不是MongoDB的问题,而是PHP驱动的问题:MongoDB本身有两种整数类型,分别是:32位整数和64位整数,但旧版的PHP驱动不管操作系统是32位还是64位,把所有整数都当做32位整数处理,结果导致64位整数被截断。为了在尽可能保持兼容性的前提下解决这个问题,新版PHP驱动加入了 mongo.native-long 选项,以期在64位操作系统中把整数都当做...

浅谈PHP5中垃圾回收算法(Garbage Collection)的演化

站长交易(http://jy.chinaz.com)友情链接交换 虚拟主机评测+IDC导航=IDC123.COM 前言:PHP是一门托管型语言,在PHP编程中程序员不需要手工处理内存资源的分配与释放(使用C编写PHP或Zend扩展除外),这就意味着PHP本身实现了垃圾回收机制(Garbage Collection)。现在如果去PHP官方网站(php.net)可以看到,目前PHP5的两个分支版本PHP5.2和PHP5.3是分别更新的,这是因为许多项目仍然使用5.2版本的PHP,而5.3版本对5.2并不是完...

PHP数组交集的优化

站长交易(http://jy.chinaz.com)友情链接交换 虚拟主机评测+IDC导航=IDC123.COM 假设我们正在运营一个手机相关的网站,用户可以通过指定若干参数(如操作系统,屏幕分辨率,摄像头像素等等)来筛选自己想要的手机。不过由于手机的参数多,且不同的手机其参数差异大,所以参数表结构通常是纵表(一个参数是一行),而不是横表(一个参数是一列),此时使用若干参数来取结果,通常就是把每个单独参数来取结果,再一起取交集。 假定每个参数会包含一千个左右的唯一结果(id int),以此为前提来模拟生...

PHP校验ISBN码的函数

站长交易(http://jy.chinaz.com)友情链接交换 虚拟主机评测+IDC导航=IDC123.COM 最近在编写一个图书管理程序的时候,需要校验图书ISBN码正确性,查了一些资料,了解了图书ISBN码的构成,详细资料可以参考:国际标准书号 维基百科,下面还是简述一下什么是ISBN码: 国际标准书号(International Standard Book Number,ISBN;拟发音is-ben),是国际通用的图书或独立的出版物(除定期出版的期刊)代码。出版社可以通过国际标准书号清晰的辨认所...

简述MVC思想与PHP如何实现MVC

站长交易(http://jy.chinaz.com)帮站长赚钱 虚拟主机评测+IDC导航=IDC123.COM 我相信已经有很多这样的文章了,但是我今天还是愿意把自己的经验与大家分享一下。纯属原创,我也没什么保留,希望对新手有帮助,有说的不对的地方,也欢迎指出。 什么是MVC? 简单的说就是将网站源码分类、分层。 MVC三个字母的含义: M:Model 模型,负责数据库操作。 V:View 视图,负责调用Model调取数据,再调用模板,展示出最终效果。 C:Controller 控制器,程序的入口,决定...

队列在编程中的实际应用

站长交易(http://jy.chinaz.com)帮站长赚钱 虚拟主机评测+IDC导航=IDC123.COM 一:队列的概念、数据结构 队列(Queue)是运算受到限制的一种线性表。只允许在表的一端进行插入,而在另一端进行删除元素的线性表。队尾(rear)是允许插入的一端。队头(front)是允许删除的一端。空队列是不含元素的空表。 假设有个队列Q=(a1,a2,,an),则a1为队头元素,an为队尾元素。元素入队的次序为a1,a2,,an,而出队的次序为a1,a2,,an。可见队列的操作是按照先进先...

提高PHP编程效率的53个要点

站长交易(http://jy.chinaz.com)帮站长赚钱 虚拟主机评测+IDC导航=IDC123.COM 用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的函数(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。 1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。 2、$row[id] 的速度是$row[id]...

SimpleXML的一点注意事项

SimpleXML提供了一套简单快速的XML操作方法,大大地提高了XML操作的效率。但是有时不小心也会带来不小的麻烦,看下面一段代码: $xml = simplexml_load_string('roottitletitle/title/root'); $title = $xml-title; echo $title; $xml-title = 'test'; echo $title; 猜猜第二个输出结果会是多少?是'test',而不是想像中的'title'。为什么会这样呢?原因在这里: echo ge...