PHP——朋友和朋友^^
其实,PHP——“Hgpertext Preprocessor”或“Personal Home Page Tools”的简写,是一种服务器端的、跨平台的、HTML嵌入式的脚本语言。
在学习其基础语法的过程中,有些地方的语法真让人费解!设计者为什么会这么设计了,各种写法变体,又和 C、Java 等这些语言不一致,很让人头疼,记忆起来确实费劲!!!
一、全局变量。
在 PHP 中,代码开头定义的变量,在后面的自定义方法中不能直接用,比如:
- <?php
- $a = 1;
- function myFc() {
- echo "a = $a";
- }
- myFc();
- ?>
运行后直接回报如下错误:
( ! ) Notice: Undefined variable: a in E:\wamp\www\t1.php on line 5
修改为:在方法中声明变量为全局的。因为 PHP 不像其它语言那样,方法前已声明的变量已经是全局变量了。改正后:
- <?php
- $a = 1;
- function myFc() {
- Global $a;
- echo "a = $a";
- }
- myFc();
- ?>
二、可替换的控制结构语法。
PHP 中,对于所有控制结构,还有一个可替换的语法形式。它由替换开始花括号({)的冒号(:)以及替换关闭花括号(})的新关键字(endif、endswitch、endwhile、endfor、endforeach)组成。
比如说,while 循环的奇怪写法如下:
- <?php
- $i = 0;
- while($i < 5) :
- echo "第 ".++$i." 点说明<br />\n";
- endwhile;
- ?>
三、标识符。
PHP 中标识符也就是变量的名称,函数和类的名称也算是标识符。但在 PHP 中,变量的标识符是区分大小写的,但操蛋的是,对于这个规则,函数名称确是个例外,函数名称可以是任意大小写的。如:
- <?php
- $abc = 2;
- echo $abc."<br />";
- function abcd() {
- echo 'abcd...';
- }
- AbCd();
- ?>
另外,在这里顺便说一下 PHP 中的 foreach 语句。在 PHP 中,使用 foreach 语句对数组遍历以及循环,有时要明显快于使用 for 语句,这是由于 PHP 在内部为 foreach 做了非常多的优化工作,因此在平时开发中请尽量使用 foreach 来完成工作。用法如下:
- <?php
- $links = array("www.menglanglang.cn", "langlang.sinaapp.com", "dlhdax.sinaapp.com");
- foreach($links as $link) {
- echo "--> <a href=\"http://$link\">$link</a><br />";
- }
- ?>
还有一种特殊形式的 foreach 语句专门用来给关联数组处理用,用法如下:
- <?php
- $links = array("www.menglanglang.cn" => "郎图腾", "langlang.sinaapp.com" => "朗朗分享", "dlhdax.sinaapp.com" => "大连海大安信科技有限公司");
- foreach($links as $link => $name) {
- echo "--> <a href=\"http://$link\">$link</a>(".$name.")<br />";
- }
- ?>