![PHP 从入门到项目实践(超值版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/705/27111705/b_27111705.jpg)
第2章 感受PHP精彩——PHP快速上手
◎本章教学微视频:11个 62分钟
学习指引
PHP作为现代热门主流的开发语言,作为初学者,应从哪里学起,如何学习呢?其实无论是“初学者”还是有资历的“高手”,没有扎实的基础作后盾都是不可以的。PHP特点是易学、易用,但并不代表轻易就能熟练掌握的。本章介绍PHP中的一些基础知识。
重点导读
- 掌握PHP基本语法。
- 掌握PHP数据类型。
- 熟悉PHP常量。
- 掌握PHP变量。
- 熟悉PHP运算符。
- 熟悉PHP表达式。
- 了解PHP编码规范。
2.1 PHP基本语法
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P27_2412.jpg?sign=1739311640-SY4yylk6lfD0FwohFMkTvspVyJS1Fapi-0-1d41c625fb0dc11e3eda4ec1c46a08c9)
在PHP中,有两种浏览器输出文本的方式:echo和print。
2.1.1 echo语法
echo用来输出一个或多个字符串。它是一个语言结构,使用的时候可以不加括号,也可以加上括号,如echo或echo()。另外,如果想给echo传递多个参数,就不能使用圆括号,可以使用单引号或者双引号。
【例2-1】(实例文件:ch02\Chap2.1.php)使用echo输出内容。
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P28_73414.jpg?sign=1739311640-2XJ9n2x6IwKcc7C3ZSJqyqGofLyX5hQ8-0-5519cfa4b866503c7cb5806214964973)
在IE浏览器中运行结果如图2-1所示。
提示:在PHP中,$符号是变量的标识符,所有的变量都是以$符号开头。
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P28_2574.jpg?sign=1739311640-FUtB6ZDOPXzYD9ShUufgvk1ZoUlWnZZM-0-1c2f0b8768504107dbe8aa47e0a67755)
图2-1 echo的使用
2.1.2 print语法
print用来输出字符串。它是一个语言结构,使用的时候可以不加括号,也可以加上括号,如print或print()。print和echo一样都可以输出字符串,在很多情况下两者的功能是一样的,但还是有以下几点区别:
(1)echo可以输出多个字符串,print只能输出一个字符串。
(2)echo输出的速度比print快。
(3)echo没有返回值,print有返回值1。
【例2-2】(实例文件:ch02\Chap2.2.php)使用print输出内容。
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P28_73418.jpg?sign=1739311640-jZiIXZtdCpEGERBQiGMi51qKjMjFr9z4-0-1deb13487aa939f1eddf4ecc6e814849)
在IE浏览器中运行结果如图2-2所示。
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P28_2566.jpg?sign=1739311640-7WfKZm3Ez4GqxDP7I7mtBJsuCtAiZU2i-0-3bf7581dd1535674ca872b794a9c0e6b)
图2-2 print的使用
2.1.3 PHP注释
注释是指在程序编写过程中,对程序文件或者代码片段添加的备注说明。注释不会影响到程序的执行,它会被解释器忽略不计。
注释在程序编程中非常重要,通过注释可以提高代码可读性,让其他开发人员能够快速理解编写的程序,也便于以后对程序的维护。
PHP注释格式分为单行注释和多行注释。
(1)单行注释。单行注释使用“//”或“#”进行注释。
(2)多行注释。多行注释是以“/*”开头、“*/”结尾,包含多行注释的内容。
【例2-3】(实例文件:ch02\Chap2.3.php)PHP注释。
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P29_73419.jpg?sign=1739311640-e2A7oB1kCiMmYntvGmSYvVRX7BOpAZqk-0-8fc566c96e071c6ec800135499c12b6c)
在IE浏览器中运行结果如图2-3所示。
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P29_2712.jpg?sign=1739311640-MCAoAehVQlIwMRQFGNUXawE7teOTOWLr-0-bca507ff07b0bc7e96985d2c56e0809b)
图2-3 PHP注释
2.1.4 PHP大小写敏感
在PHP中,关于大小写的问题,对于新手来说有些模糊不清,有些地方区分大小写,有些地方又不区分大小写。
在PHP中,大小写敏感问题的处理比较乱,大家一定要注意。即使某些地方大小写不敏感,但在编程过程中能始终坚持“大小写敏感”是最好不过的。下面介绍一些关于大小写应注意的问题。
1. 大小写敏感
(1)变量名区分大小写,例如下面的代码:
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P29_73420.jpg?sign=1739311640-u4Q1EEKDppIyyfIDoLtTEX8iolnyQOUX-0-5b56644d4a142fbda52098757d5daa42)
在IE浏览器中运行结果如图2-4所示。
(2)数组索引(键名)区分大小写,例如下面的代码:
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P29_73421.jpg?sign=1739311640-evN0ZHlPFEErFxdpS1VUhsK9x7dJMRI4-0-df8c3fcadc6462bb8e663bbf2c8cbf19)
在IE浏览器中运行结果如图2-5所示。
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P30_2719.jpg?sign=1739311640-mnfiRjQsfKgGCIRogoVD6BV5DpvCO8wP-0-7c670d0abb0e5b94fda4dff5c0aff4bd)
图2-4 变量名大小写敏感
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P30_2722.jpg?sign=1739311640-lE8Mf02NljxyytoDpjt41BjsOph6r2WW-0-96efc9537c0d41a2d7ea835e4ae27ee0)
图2-5 数组索引(键名)区分大小写
(3)常量名区分大小写,例如下面的代码:
在IE浏览器中运行结果如图2-6所示。
提示:这里使用define()函数创建常量,在后面2.3.1节中具体介绍。
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P30_2914.jpg?sign=1739311640-VfTOUOPzfric0AuDWWLqya1kmap6oT9w-0-8d3fe4bbd5d2784a8986a3009bbe1b27)
图2-6 常量名区分大小写
2. 大小写不敏感
(1)函数名、方法名、类名不区分大小写,例如下面的代码:
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P30_73423.jpg?sign=1739311640-hOQvEtOPUWjKmFiW1F1BmQT96NpHQAFB-0-f2fea802f9feb794a96d9c45e118b3cd)
在IE浏览器中运行结果如图2-7所示。
(2)NULL、TRUE、FALSE不区分大小写,例如下面的代码:
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P30_73424.jpg?sign=1739311640-oy9zyo3w25f8w6zpDUCpuOLGP0FGktBq-0-6ae8bddec3489a50c3abce774bc4e202)
在IE浏览器中运行结果如图2-8所示。
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P31_2933.jpg?sign=1739311640-Q4JkBZ2mcRuFJsAOrZdjuXoYThucA5V8-0-a86e7d7daeab8d2055c22d3f23752d40)
图2-7 函数名、方法名、类名不区分大小写
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P31_2936.jpg?sign=1739311640-DS3z7hrJeVCnybwdNqkSwq7XSQx5QvUx-0-b09590f7086281fbcd4493189b634d07)
图2-8 NULL、TRUE、FALSE不区分大小写
提示:var_dump()方法是判断一个变量的类型与长度,并输出变量的数值,如果变量有值,输出的是变量的值并返回数据类型。此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。
(3)强制类型转换不区分大小写,例如下面的代码:
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P31_73429.jpg?sign=1739311640-PWtYr6FfMiq55tezSjjM2DEi7gPk3zM7-0-62f734bab6fcb04218a78fa3fd4ac9c3)
在IE浏览器中运行结果如图2-9所示。
(4)魔术常量不区分大小写,推荐大写,例如下面的代码:
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P31_73430.jpg?sign=1739311640-gII5RhyQeMPR20NpdGlm6HX0FgwP9n5J-0-22341378109a1cbebf37398546558b58)
在IE浏览器中运行结果如图2-10所示。
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P31_3044.jpg?sign=1739311640-Ymz6UDCNnpdRdKt5tKSqJtmL7ZicPSR6-0-b773c1c914d0d0802064ea53020e7dcd)
图2-9 强制类型转换不区分大小写
![](https://epubservercos.yuewen.com/B097BE/15477656605638806/epubprivate/OEBPS/Images/Figure-P31_3047.jpg?sign=1739311640-D4P5sdrQ8J7e9JaPMtZGBHJb3fjydr7R-0-434f5977887a3d89fe2ce7c48f5ee617)
图2-10 魔术常量不区分大小写
提示:魔术常量的值随着它们在代码中使用位置的改变而改变。魔术常量包括__LINE__、__FILE__、__DIR__、__FUNCTION__、__CLASS__、__METHOD__、__NAMESPACE__和__TRAIT__。