PHP - 文章列表

  • php设计模式介绍之注册模式

    上文:《PHP设计模式介绍》第四章 单件模式\n《PHP设计模式介绍》第五章 注册模式\n我们通常认为避免使用全局变量是一种好的选择,因此,对象经常被作为参数从一段代码传递到另一段。但是传递实例的一个问题就是对象有时候不知道将要传递给谁——?经过一个函数后才被传递到真正需要这个对象的函数。\n为了编写,阅读,修改代码的方便,最好能够减少不同对象的数量,并且能够将大量广泛使用的对象统一表示为一个单一,常用的对象。\n问题:\n你如何通过单一的全局的对象来获取对其它对象的引用?\n解决方案:\n“注册模式”就像“对象的电话簿”——储存并且能够取回对对象引用的登记簿。(注:PHP中的“联合数组”也起

  • php页面zend加密乱码的解决办法

    今天在服务器部署一个php程序是有zend加密的页面出现乱码,经过goole和自己的测试,终于解决了一:首先安装zend,可以去zend的官方下载,执行install.sh就会自动安装,需要指定php.ini和apache脚本的位置。然后重启apache。二:php.ini激活zend注意:zend_optimizer.enable_loader = 1zend_extension_ts = “your php dir” zend_extension_manager.optimizer_ts = “D:xamppphpzendOpt

  • php设计模式介绍之编程惯用法

    《PHP设计模式介绍》第一章 编程惯用法学习一门新的语言意味着要采用新的惯用法。这章将介绍或者可能重新强调一些惯用法。你会发现这些惯用法在你要在代码中实现设计模式时候是非常有用的。在这里总结的许多编程惯用法都是很值得做为单独一个章节的,甚至一本书的。你应该把这章做为PHP模式设计使用惯用法的相关介绍,而且查看一些列出的参考书来进行更深入的学习。测试你的代码可能没有什么代码惯用法比测试代码更加重要了。好的测试可以提高开发速度。可能一开始,这句格言会和你的直觉相矛盾。你可能会断言,测试是自由的障碍物。事实上恰恰相反,如果你十分完整的运行那些测试来检查你的软件的公共接口,你就可能在不改变(或者更加糟

  • PHP实例:PHP批量生成缩略图

    到今天我学PHP已经快一年了。不过小弟资质相当有限,一直没有做出什么好东西来。在工作中有时需要把大批量的图片变小,这是一件很简单但很无聊的事情。有一天突发奇想,怎么不用PHP来做一个小程序呢?于是昨天完成了一个批量生成缩略图的小程序。现在发布出来,请各位大哥大姐多多批评!­ 1.先来分析一下程序的界面。 界面很简单:首先声明本程序仅支持JPG、GIF、PNG三种图片格式。然后分别指出源文件和缩略图保存的文件夹。接下来可以设置JPG的质量和缩量图的大小。最后是显示所消耗的时间和处理的图片数。 2.完整PHP源程序。源程序很简单,不多做解释。解压后直接放于可运行PHP的WWW目录下既可运

  • 在php中 urlencode函数解决乱码问题

    我们在编写php程序的时候一般很少注意urlencode编码,为了避免出现编码错误建议大家.\n在编写程序的时候,只要遇到中文字符用get方式传输的情况,都用urlencode进行编码,编码后不需要解码\n就可以直接用.这对于我们用中文进行字符查询的时候很有用.能够避免乱码问题.\n下面是我的一个实例:\n<A href=”listlook.php?wenzhang=<? echo urlencode(row[\"title\"])?>&id=<? echo row[\"id\"];?>”title=”标题:<?

  • PHP实现异步调用方法研究

    浏览器和服务器之间是通过 HTTP 协议进行连接通讯的。这是一种基于请求和响应模型的协议。浏览器通过 URL 向服务器发起请求,Web 服务器接收到请求,执行一段程序,然后做出响应,发送相应的html代码给客户端。这就有了一个问题,Web 服务器执行一段程序,可能几毫秒就完成,也可能几分钟都完不成。如果程序执行缓慢,用户可能没有耐心等下去,就关闭浏览器了。 而有的时候,我们更本不关心这些耗时的脚本的返回结果,但却还要等他执行完返回,才能继续下一步。 那么有没有什么办法,只是简单的触发调用这些耗时的脚本然后就继续下一步,让这些耗时的脚本在服务端慢慢执行? 经过试验,总结

  • PHP技巧:何避免页面刷新数据重复写入数据库

    何避免页面刷新数据重复写入数据库 当表单的数据是提交给本页面处理并写入数据库时,点提交后,刷新页面的话使数据重复写入数据库。网上搜索一下,发现了不少的解决方案:\n一、把一页面分开为两个,数据提交给另一个页面处理,之后再跳到输入页面。 优点:避免了刷新的影响,并可连续提交数据。 缺点:当用户在还没有完整的填写表单时,点了提交。若不执行数据入库操作又要保留用户之前输入的内容,用php来实现有些困难或说不方便。(当然,用js实现可能比较容易。在此约定本文只是从php的角度评价,研究php的运用) *总的说来,这是一种不错的解决方案。

  • PHP连接ACCESS数据库的类

      试过PHP连接ACCESS数据库没?这个用途不大,但有时候也用得着!我以前试图将一个ASP程序改写成PHP的,原程序的数据库设计得比较完善,我打算开发时就用它的ACCESS数据库 ,等程序完成后再转换。这个程序改写计划最终搁浅了,但此过程中为了方便连接ACCESS数据库,我写了个PHP连接ACCESS数据库的类,比较方便,希望有人用得着!<?/* 作者:夜无眠 QQ:27262681 ***本类只能在win平台的服务器上使用*/class access{ function access(dir){ //构析函数,调用.com建立数据源,链接数据库;参数为数据库

  • php设计模式介绍之值对象模式

    上文:《PHP设计模式介绍》第一章 编程惯用法\n《PHP设计模式介绍》第二章 值对象模式\n在所有的最简单的程序中,大多数对象都有一个标识,一个重要的商业应用对象,例如一个Customer或者一个SKU,有一个或者更多的属性—id,name,email地址,这样可以把它从同一个类的其他实例区分开来。此外,对象有一个恒定的标识:它是贯穿于整个应用程序的一个唯一的标识,对于程序员来说,”customer A”在任何地方就是”customer A”,并且只要你的程序在持续运行时”customer A”仍然是”customer A”。 但是

  • PHP实例:PHP汉字验证码的实现

    <?php /* * 文件:chinesechar.php * 作用:汉字数据储存 * 作者:PHP实战群:33918040 – 鱼尾唯一 * 网址:http://bbs.ailf.cn/ http://www.fishwei.com/ * 特注:版权所有转载注明出处!有付出才会有收获! */ ChineseChar = array(“人”,”出”,”来”,”友”,”学”,”孝”,”仁