• 技术文章 >后端开发 >php教程

    CLASS_PHP

    2016-06-01 12:39:50原创378
    一个class是一个变量和使用这些变量的函数的组合。定义class使用如下的语法:


    // Add $num articles of $artnr to the cart

    function add_item ($artnr, $num) { $this->items[$artnr] += $num; }

    // Take $num articles of $artnr out of the cart

    function remove_item ($artnr, $num) {

    if ($this->items[$artnr] > $num) {

    $this->items[$artnr] -= $num;

    return true;

    } else {

    return false;

    }

    }

    }

    ?>

     

    如上所示,定义了一个名字为Cart的class。这个class由多个描写物品的数组和添加项目、删除项目的函数组成。

    Class是一种类型,这就是说,它是实际变量的设计蓝图。您可以根据设计建立一个变量组和针对它们的一些新的操作。示例如下:

     

    $cart = new Cart;

    $cart->add_item("10", 1);

     

    如上所示,建立了一个类型为class Cart的对象$cart。这个对象中的函数add_item()被调用来添加一个物品号为10的项目。

    Class可以使用其他的Class来扩展。这个扩展的或者继承的class(类)拥有基本class所有的变量和函数同时您还可以在其中加如您自己做的扩展定义。要这样定义需要使用扩展定义的关键词。

     

    class Named_Cart extends Cart {

    var $owner;

    function set_owner ($name) {

    $this->owner = $name;

    }

    }

     

    以上定义了一个名字为Named_Cart的class(类),这个类拥有所有包含于类Cart中的变量和函数,同时还添加了一个变量$owner和函数set_owner()。您可以建立一个有名字的cart,同时获得cart的拥有者名字。您还可以在类Named_Cart中,使用普通的属于类cart的函数。

     

    $ncart = new Named_Cart; // Create a named cart

    $ncart->set_owner ("kris"); // Name that cart

    print $ncart->owner; // print the cart owners name

    $ncart->add_item ("10", 1); // (inherited functionality from cart)

     

    在这个类的函数中变量$this表示这个对象。在当前的对象中,您可以使用$this->something来访问任何变量和函数。

    当您建立一个新的类时,有一个构造器函数将被自动的调用。如果某个函数的名字和类的名字一样,那么它就成为构造器:

     

    class Auto_Cart extends Cart {

    function Auto_Cart () {

    $this->add_item ("10", 1);

    }

    }

     

    在上面的例子中,定义了一个名字为Auto_Cart的类,它是在原来的类Cart中加上了一个构造器函数,这个构造器函数初始化了类Cart使用的方法是:在每次建立一个类的时候添加一个物品号为10的一个项目。构造器还可以显示一些信息,这些信息可以被随意的挑选,这使他们可以变的十分的有用,

     

    class Constructor_Cart {

    function Constructor_Cart ($item = "10", $num = 1) {

    $this->add_item ($item, $num);

    }

    }

    // Shop the same old boring stuff

    $default_cart = new Constructor_Cart;

    // Shop for real...

    $different_cart = new Constructor_Cart ("20", 17);
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐: 一个 函数 cart class 可以
    上一篇:目录遍历函数_PHP 下一篇:网站加速PHP缓冲的免费实现方法_PHP
    千万级数据并发解决方案

    相关文章推荐

    • 消息队列RabbitMQ入门与PHP实例详解• PHP Array函数分门别类• 编译php 5.4.11报错了,求相助 • 求教大大们。该如何处理 • 一个下载地址防盗的判断 大牛进来看下!该如何解决
    1/1

    PHP中文网