php3中文文档续4

为了理解switch语句为了躲避语句冗长,知道它如何被执行的是非常重要的.switch语句石一行一行 执行的(事实上,是一条语句一条语句).在开始时,没有代码被执行.仅仅当一个值于switch表达式的语句的值相同的case语句被发现后,php继续执行语句直到switch体的结束,或者出现了break语句.如果你在一个分支语句的后面没有写break语句,php将继续执行下面分支的语句.例如:   /* example 3 */   switch ($i) { case 0: print “i equals 0”; case 1: print “i equals 1”; case 2: print “i equals 2”; }   这里,如果$i等于0,php将会执行所有打印语句.如果$i等于1,php将会执行剩下的两个打印语句,并且仅仅当$i等于2的时候,你才能得到你期望的执行结果,只有’i equals 2’被显示.因此不要在每一个分支语句的后面忘记break语句(即使你在一定的环境下有可能想避免提供他们). 一个特殊的分支是默认的分支.这个分支可以匹配任何其它分支没有匹配的事情.例如:   /* example 4 */   switch ($i) { case 0: print “i equals 0”; break; case 1: print “i equals 1”; break; case 2: print “i equals 2”; break; default: print “i is not equal to 0, 1 or 2”; }   另外一个值得一提的事实是case表达式可以是任何计算标量类型的表达式,也就是说,整型或实型和字符型.数组和对象将不会导致php崩溃,但是他们没有没有任何意义.   require require语句使用指定的文件来代替它自己,与c语言中的#include语句非常相似。这意味着你不能把一个require()语句放在一个循环体中,并且期望它在每一次反复中都包含不同文件的内容.为了达到这个目的,可以使用include语句。 require (header.inc);   include include语句包括和计算指定文件. 在每次遭遇include语句的时候都会进行一次.因此你可以在一个循环体中使用include语句.以用来包含一些不同的文件. $files = array (first.inc, second.inc, third.inc); for ($i = 0; $i < count($files); $i++) { include($files[$i]); } include()与require()语句是不同的,include语句是每一次都重新计算(并且仅仅当它被执行的时候),而require()语句当他第一次被碰到的时候,用指定的文件来代替它本身,无论这个文件的内容是否被计算(例如,如果它出现在一个条件为false的if语句中). 因为include()是一个特殊的语言结构,你必须在一个语法块中封闭它,如果它在一个条件块中.   /*错误,不会同设想一样工作. */   if ($condition) include($file); else include($other);   /*下面是正确的. */   if ($condition) { include($file); } else { include($other); }   当一个文件被计算的时候,语法分析将处在”html-模式”中,这个模式将输出这个文件的内容直到第一个php开始标签(   如上所示,定义了一个名字为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);

http://www.bkjia.com/phpjc/532208.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/532208.htmltecharticle为了理解switch语句为了躲避语句冗长,知道它如何被执行的是非常重要的.switch语句石一行一行 执行的(事实上,是一条语句一条语句).在开始时…

Posted in 未分类