易截截图软件、单文件、免安装、纯绿色、仅160KB

实现php工厂模式的几个关键函数

面向对象编程的方法中,为了实现对象间的松耦合,其中一种简单的原则就是将应用策略与功能实现分离。常常用到的设计模式有factory、facade等,而当中的核心编程技术就是callback技术。
所谓callback技术,简单的说就是将函数的作为一个参数传递给另外一个函数,并被该函数所调用。
php下,实现工厂模式的有一下。几个关键函数
mixed call_user_method_array     ( string $method_name    , object &$obj    , array $paramarr    )从用户定义的 obj 对象中调用 method_name 所指的方法,同时使用 paramarr 中的参数。
mixed call_user_method ( string method_name, object &obj  [, mixed parameter [, mixed ...]] )类似call_user_method_array,
mixed call_user_func_array ( string $callback_function, array  param_arr )从调用callback_function,并使用param_arr中的参数
mixed call_user_func ( callback function [, mixed  parameter [, mixed ...]] )第一个参数指定了调用的函数名,后面是不限个数,不限格式的参数队列。
call_user_func_array 与call_user_func是两者不同的书写习惯。
其中通过改变call_user_func的参数,基本上可以应付各种需求了。
// Type 1: Simple callback
call_user_func(‘my_callback_function’);// Type 2: Static class method call
call_user_func(array(‘MyClass’, ‘myCallbackMethod’));
// Type 3: Object method call
$obj = new MyClass();
call_user_func(array($obj, ‘myCallbackMethod’));
还有一些辅助的函数
     class_exists — 檢查類別是否已經定義
     get_class_methods — 傳回類別中方法的名稱
     get_class_vars — 傳回類別預設的屬性
     get_class — 傳回物件的類別名稱
     get_declared_classes — 傳回聲明的類別的名稱
&nbs


相关文档:

php 使用GD库生成验证码


GD库是PHP进行图象操作一个很强大的库。
先在php.ini里增加一行引用:extension=php_gd2.dll
重启apache。做一个测试页 var_dump(gd_info());输出数据表明GD库引用成功。
表单auth.html
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
< ......

php json_encode 问题解决小记

今天碰到个奇怪的问题,一个ajax页面在本地测试服务器运行一切正常,传到公网服务器上就死活说 javascript错误。
打开代码一看,是javascript的那一行使用了一个json的reponseText,DEBUG一下,原来回传是空的。
看看后台PHP,貌似没什么问题(本来以为是URL问题)然后上网搜一下,原来是PHP的json_encode函数在5.2下才有 ......

PHP提取8684公交数据

最近一年来一直在使用fedora,发现linux真是太适合我了,喜欢写程序,自己瞎倒腾,唉windows误我大好年华……
用PHP写了一段程序用于提取网页中的数据,相信搜索引擎也是差不多的想法,只不过他们数据多,算法好些,呵呵
[php]
<?php
/*
*此文件的目标是自动搜集存储8684上的深圳市公交数据
*
*由 ......

PHP经验分享

1.如果一个方法能被静态,那就声明他为静态的,速度可提高1/4;
  2.echo的效率高于print,因为echo没有返回值,print返回一个整型;
  3.在循环之前设置循环的最大次数,而非在在循环中;
  4.销毁变量去释放内存,特别是大的数组;
  5.避免使用像__get, __set, __autoload等魔术方法;
  6.requiere_once()比较 ......

PHP缓冲技术


一、缓存技术:   
有些信息比方经常不变的,但是还是能变的信息放在缓存中以加快显示速度,这是很有价值的,所谓的缓存,通俗的理解就是一些保存在服务器端的共用信息.它是于服务器同生死的,我们在保存缓存的时候可以指定下次更新的时间的判断,比方要在5分钟更新一次,可以记录上次更新的时间,和当前时间比较, ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号