来自 编程 2019-11-22 20:49 的文章
当前位置: 澳门三合彩票 > 编程 > 正文

下面程序执行如果 $a 大于 $b则显示,000个站点在

第一章PHP3简介 PHP 是一种服务器内置式的script 语言,它的出现使得在unix上快速地开发动态web成为现实。 PHP是Rasmus Lerdorf在1994年秋天构思出来的。最早的未发行版本是他在自己的主页上来用来和观看他的在线简历的人保持联系的。第一个交付用户使用的版本是在1995年初发行的,它只是被当作一个个人主页制作工具。当时它仅包括一个只能懂得很少几条宏指令的非常简单的分析引擎和一组用于主页信息反馈的工具。1995年年中,Rasmus重写了整个解析器,并取名为PHP/FI 2。FI来源于他写的另外一个html表单集成数据的软件包。他把个人主页工具,表单集成工具合并在一起,并加入了mSQL数据库的支持,这样就有了PHP/FI。此后PHP/FI便以一种令人惊奇的速度传播开来,人们开始大量使用它编写程序。 我们无法确切的统计它的使用范围,但是根据估计到1996年底,世界上已经有至少15,000个站点在使用PHP/FIl。到了1997年年中这个数字已经增长到超过50,000个站点。 1997年年中我们也发现了PHP发展过程中一个重大的转折。这就是PHP的开发从Rasmus个人的爱好升级到一群程序员们有组织的工作。 再后来,这个解析器被Zeev Suraski和Andi Gutmans重写,通过这次全面的重写,大量PHP/FI的功能被移植到PHP3中,并且成为了PHP3的基本雏形。 到1998年年中时,已经有大量的商业化产品,例如 C2的 StrongHold web server和RedHat Linux捆绑了PHP/FI解析器或PHP3解析器,根据NetCraft估计的保守数据,PHP已经被世界上150,000个站点所采用。通过进一步分析,我们知道其使用数量远比使用Netscape公司旗舰产品--企业级WEB服务器的站点多。 PHP3大量采用了C, Java和Perl语言的语法,并加入了各种PHP自己的特征。它与javascript等语言的一个区别就是PHP3是在服务器执行,客户机所看到的是其在服务器上运行的结果,这意味着您若想采用PHP3 scrpit,必须得有 WEB SERVER 支持。 PHP3支持HTTP的身份认证、cookie、GIF图象创建,它的一个最有代表性的特点是它的数据库层,它使得编写基于数据库的网页变得非常简单。下列出了目前所支持的数据库: Oracle ,Sybase , mSQL ,MySQL ,Informix ,Solid dBase ,ODBC, Unix dbm, PostgreSQL ,Adabas D,FilePro Velocis。 PHP3也支持与采用POP3、HTTP、SNMP、NNTP、IMAP等协议的服务进行网络编程。 PHP3的程序模式 有三种方法从HTML进入"PHP程序模式": 第一种方法: PHP3语句; ?> 如: echo("this is the simplest, an SGML processing instructionn"); ?> 第二种方法:

1、IF语句 IF语句是多数语言中的一个重要特点,它根据条件执行程序段。PHP的IF语句类似于 C: if statement 正如在表达式中所论述, expr 被计算为它的真值。如果 expr 为TRUE, PHP执行相应语句, 如果为FALSE 则忽略它。 如果$a 大于 $b,下例将显示 'a is bigger than b': if print "a is bigger than b"; 通常,你希望根据条件执行多于一条语句。当然,不需要给每条语句都加上 IF 判断。取而代之,可以把多条语句组成一个语句组。 If语句可以嵌套于其他 IF语句中,使你能够灵活地有条件的执行程序的各个部分。 2、 ELSE语句 通常你希望满足特定条件时执行一条语句,不满足条件是执行另一条语句。ELSE就是用来做这个的。ELSE 扩展IF语句,在IF语句表达式为FALSE时执行另一条语句。例如, 下面程序执行如果 $a 大于 $b则显示 'a is bigger than b',否则显示 'a is NOT bigger than b': if { print "a is bigger than b"; } else { print "a is NOT bigger than b"; } 3、 ELSEIF语句 ELSEIF,就象名字所示,是IF和ELSE的组合,类似于 ELSE,它扩展 IF 语句在IF表达式为 FALSE时执行其他的语句。但与ELSE不同,它只在ELSEIF表达式也为TRUE时执行其他语句。 可以在一条IF语句中使用多条ELSEIF语句。第一个ELSEIF表达式为TRUE的语句将被执行。在PHP 3中,你也可以写成'else if' 和 'elseif' 效果一样。这只是写法上的细小差别,结果是完全一样的。 ELSEIF语句仅在IF表达式和任何前面的ELSEIF表达式都为FALSE,且当前ELSEIF表达式为TRUE时执行。 下面是一个含有ELSEIF和ELSE的嵌套格式的IF语句: if : print "a equals 5"; print "..."; elseif : print "a equals 6"; print "!!!"; else: print "a is neither 5 nor 6"; endif; 4、 WHILE语句 WHILE循环是PHP 3的一种简单的循环。象在 C 中一样。WHILE语句的基本格式是: WHILE statement WHILE语句的意思非常简单。它告诉PHP只要WHILE表达式为TRUE就重复执行嵌套的语句。每次循环开始时检查WHILE表达式的值,所以即使在嵌套语句内改变了它的值,本次执行也不会终止,而直到循环结束。类似于IF语句,你可以用大括号把一组语句括起来,在同一个WHILE循环中执行多条语句: WHILE: statement ... ENDWHILE; 下面例子完全相同, 都打出数字 1 到 10: /* example 1 */ $i=1; while { print $i++; /* the printed value would be $i before the increment */ } /* example 2 */ $i=1; while : print $i; $i++; endwhile; 5、DO..WHILE语句 DO..WHILE 非常类似于 WHILE 循环, 只是它在每次循环结束时检查表达式是否为真,而不是在循环开始时。 它和严格的WHILE循环的主要区别是DO..WHILE的第一次循环肯定要执行, 而不必执行严格的WHILE循环(每次循环开始时就检查真值表达式, 如果在开始时就为FALSE, 循环会立即终止执行). DO..WHILE循环只有一种形式: $i = 0; do { print $i; } while ; 上面循环只执行一次, 因为第一次循环后,当检查真值表达式时, 它算出来是 FALSE 循环执行终止。 6、 FOR循环语句 FOR循环是PHP中最复杂的循环。象在 C 中一样。 FOR循环的语法是: FOR statement 第一个表达式在循环开始时无条件的计算。 每一次循环, 表达式 expr2 都被计算。如果结果为 TRUE, 则循环和嵌套的语句继续执行。如果结果为 FALSE,则整个循环结 束。 每次循环结束时, expr3 被计算. 每一个表达式都可为空。expr2 为空则循环的次数不定。除非你要通过一个条件的 BREAK语句代替FOR 的真值表达式来结束循环,否则不要这样。 考虑下面例子。它们都显示数字 1 到 10: /* example 1 */ for { print $i; } /* example 2 */ for { if { break; } print $i; } /* example 3 */ $i = 1; for { break; } print $i; $i++; } 当然,第一个例子显然是最好的,但借此你可以发现在FOR 循环中很多场合可以使用空的表达式。 其他的语言有一条foreach语句用来遍历一个数组或哈希表。PHP使用while语句和 list 函数来达到这个功能。 7、 SWITCH选择语句 SWITCH语句就象是对同一个表达式的一系列IF语句。在很多时侯,你想把同一个变量和许多不同的值去比较 ,并根据不同的比较结果执行不同的程序段。这就是 SWITCH语句的用处了。 下面两个例子通过不同的方法做同一件事,一个用一组 IF语句,另外一个用 SWITCH 语句: /* example 1 */ if { print "i equals 0"; } if { print "i equals 1"; } if { print "i equals 2"; } /* example 2 */ switch { case 0: print "i equals 0"; break; case 1: print "i equals 1"; break; case 2: print "i equals 2"; break; } 、REQUIRE语句 REQUIRE语句用指定的文件代替自己,很象 C 中的预处理 #澳门三合彩票,include 。 这意味着你不能为了每次调用该函数来包含不同文件的内容,而把require()语句放在一个循环结构,。要这么做,使用 INCLUDE 语句。 require、 INCLUDE语句 INCLUDE语句包含指定的文件。 每次遇到INCLUDE是INCLUDE语句就包含指定的文件。所以你可以在一个循环结构中使用INCLUDE语句以包含一系列不同的文件。 $files = array('first.inc', 'second.inc', 'third.inc'); for ($i = 0; $i < count { include、 函数 可以通过以下的语法定义函数: function foo( $arg_1, $arg_2, ..., $arg_n ) { echo "Example function.\n"; return $retval; } 函数中可以使用任何有效的PHP3 代码,甚至是其他的函数或类 的定义 1、 函数返回值 函数可以通过可选的return语句返回值。返回值可以是任何类型,包括列表和对象。 function my_sqrt { return $num * $num; } echo my_sqrt; // outputs '16'. 函数不能同时返回多个值,但可以通过返回列表的方法来实现: function foo() { return array; } list = foo(); 2、 参数 外部信息可以通过参数表来传入函数中;参数表就是一系列逗号分隔的变量和/或常量。 PHP3支持通过值形参数, 变量参数,和 默认参数。不支持变长参数表, 但可以用传送数组的方法来实现。 3、 关联参数 默认情况函数参数是传值方式。如果你允许函数修改传入参数的值,你可以使用变量参数。 如果你希望函数的一个形式参数始终是变量参数,你可以在函数定义时给该形式参数加前缀: function foo { $bar .= ' and something extra.'; } $str = 'This is a string, '; foo; echo $str; // outputs 'This is a string, and something extra.' 如果要传递一个可变参数给默认的函数,你可以在调用函数时给实际参数加前缀: function foo { $bar .= ' and something extra.'; } $str = 'This is a string, '; foo; echo $str; // outputs 'This is a string, ' foo; echo $str; // outputs 'This is a string, and something extra.' 4、 默认值 函数可以定义 C++ 风格的默认值,如下: function makecoffee( $type = "cappucino" ) { echo "Making a cup of $type.\n"; } echo makecoffee(); echo makecoffee( "espresso" ); 上边这段代码的输出是: Making a cup of cappucino. Making a cup of espresso. 注意,当使用默认参数时,所有有默认值的参数应在无默认值的参数的后边定义;否则,将不会按所想的那样工作。 5、CLASS 类是一系列变量和函数的集合。类用以下语法定义: items[$artnr] += $num; } // Take $num articles of $artnr out of the cart function remove_item { if ($this->items[$artnr] > $num) { $this->items[$artnr] -= $num; return true; } else { return false; } } } ?> 上面定义了一个叫Cart 的类,其中包括一个关联数组和两个用来从cart中增加和删除项目的函数。 类是实际变量的原始模型。你要通过new 操作符来建立一个所需类型的变量。 $cart = new Cart; $cart->add_item; 这建立起一个 Cart类的对象$cart。该对象的函数add_item()被调用来给第10项加 1。 类可以从其他的类扩充得到。扩充或派生出来的类拥有基类的所有变量和函数及你在扩充定义中所定义的东西。这要使用 extends 关键字。 class Named_Cart extends Cart { var $owner; function set_owner { $this->owner = $name; } } 这里定义了一个名为 Named_Cart 的类它继承了 Cart类所有变量和函数并增加了一个变量 $owner和一个函数 set_owner()。 你建立的 named_cart 类的变量现在就能设置carts 的 owner了。在named_cart变量中你仍然可以使用一般的 cart函数: $ncart = new Named_Cart; // Create a named cart $ncart->set_owner; // Name that cart print $ncart->owner; // print the cart owners name $ncart->add_item; // (inherited functionality from cart) 函数中的变量 $this 意思是当前的对象。你需要使用 $this->something 的形式来存取所有当前对象的变量或函数。 类中的构造器是你建立某种类的新变量时自动被调用的函数。类中和类名一样的函数就是构造器。 class Auto_Cart extends Cart { function Auto_Cart() { $this->add_item; } } 这里定义一个类 Auto_Cart ,它给 Cart类加了一个每次new操作时设置项目10进行变量初始化的构造器。构造器也可以有参数,这些参数是可选的,这种特点也使得其十分有用。 class Constructor_Cart { function Constructor_Cart($item = "10", $num = 1) { $this->add_item; } } // Shop the same old boring stuff. $default_cart = new Constructor_Cart; // Shop for real... $different_cart = new Constructor_Cart;

如:

第一种方法:

如:

本文由澳门三合彩票发布于编程,转载请注明出处:下面程序执行如果 $a 大于 $b则显示,000个站点在

关键词: