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

PHP码农进化史2

1.是否可以在类的外部访问一个属性是由访问修饰符来确定的。
2.从类的外部直接访问类的属性是糟糕的想法。面向对象的一个方法就是鼓励封装。在PHP中,我们一般通过__get()与__set()函数来实现对
属性的访问.如果不直接访问一个类的属性而是编写访问函数,那么可以通过一段代码执行所有访问。最初的访问函数如下所示:
class classname {
    public $attribute;
    function __get($name) {
        return $this->$name;
    }
    function __set($name, $value){
        $this->$name = $value;
   }
}
3.此访问器函数的原理就是这样:只使用一段代码来访问特定属性。由于只有一个入口,就可以对要保存的数据进行检查,可以确保保存的数
据是有意义的数据。例如:
function _set ($name, $value) {
    if( ($name == "attribute") && ($value >= 0) && ($value <= 100) ) {
        $this->attribute = $value;
    }
}
4.通过单一的访问入口,可以方便地改变潜在的程序实现。如果由于某种原因,需要改变属性$attribute的保存方式,访问器函数允许我们只
要修改一处代码,就可以完成此工作。
5.__get(),__set(),__isset(),__unset().
一般来说,总是把类的属性定义为private,这样更复合现实逻辑。
__get(),__set():用来获取和赋值其属性.他们不是默认存在的,而是我们手工添加进去的。
__isset(),__unset():来检查属性和删除属性。
6.__get()与__set(),__isset()与__unset()的一般添加方法。
//__get()方法用来获取私有属性.
private function __get($property_name) {
    if (isset($this -> property_name)) {
        return($this -> $property_name);
    } else {
        return(NULL);
    }
}
//__set()方法设置私有属性
private function __set($property_name,$value) {
    $this -> $property_name = $value;
}
//__isset()方法可以设为私有
private function __isset($property_name) {


相关文档:

CentOS 5.3 php 装zendOptimizer 3.3.0

 问题:Failed loading /usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimizer.so:  /usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimizer.so: cannot restore segment prot after reloc: Permission denied
Failed loading /usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimize ......

PHP全能班【2009年11月14日开课】

 PHPChina【郑州】认证中心- -PHP全能班(2009年11月14日开课)
改变职业人生,成就新的事业,PHP--全球最热门网站开发技术!
        国内排名前十名的网站中使用PHP的有8家:百度、腾讯网、新浪、搜狐、网易、淘宝、雅虎中国、Tom在线。国内近两年新推出的web2.0网站中,有80%使用 ......

PHP读取BMP格式图片的函数

PHP中居然没有读取BMP格式图片的函数,还好高人已经写好一个,我没看代码,反正能正常使用.
imagecreatefrombmp -- 从 BMP 文件或 URL 新建一图像
function imagecreatefrombmp($file)
{
global $CurrentBit, $echoMode;
$f=fopen($file,"r");
$Header=fread($f,2);
if($Header=="BM" ......

php连接mysql详解

 如果只是一个数据库的话,我们一般习惯这样写:mysql_select_db("guestbook");
mysql_query('select * from users');
但是如果是连接多个mysql,有可能出现同名的数据库,或者数据库中出现同名的表,所以就必须用完整的形式了,如下代码:
<?php
$link1 = mysql_connect('localhost1','root','root');
mysql ......

在PHP里得到前天和昨天的日期的代码

在PHP里得到前天和昨天的日期的代码前天去面试的时候也是这样,不过我当时记不起来了.就记得MYSQL里面的date_sub(now(),'interval 1 day');date('Y/m/d h:i:s',mktime(date('h'), date('i'), date('s'), date('m') , date('d')+1, date('Y'))); -------------------------------------------------------------------------- ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号