PHP文件的组成

PHP文件是一种文本文件,它既可以和HTML代码混合在一起,也可以单独编写纯PHP代码
具体来说一个PHP文件由以下几个部分组成
(1)HTML标记:一般作为页面中的布局,或者是页面中固定不变的部分
(2)Javascript脚本:由<script language=”JavaScript”>与扩住
(3)PHP脚本:以“<?php”开始“?>”结束。
除上述标记外,PHP脚本还允许使用其他样式的标记,这里就不一一叙述了。

其中,HTML标记,javaScript脚本在客户端运行,PHP脚本在服务器端运行。如果一个网页含有PHP脚本,那么该网页为动态网页,扩展名必须为.php

PHP脚本中的注释

类似C语言,可以有两种注释风格。
(1)单行注释:从//开始直到行末,均属于注释部分。
举个栗子:

1
2
3
4
<?php
echo 'Hello';
echo '世界上最好的语言PHP'; //不服来辩!
?>

(2)多行注释:从/ * 开始到 * /结束,不管有多少行,均属于注释
举个栗子:

1
2
3
4
5
6
7
8
<?php
echo 'Hello';
echo '世界上最好的语言PHP';
/*
写代码是热爱
写到世界充满爱!
*/
?>

输出语句

PHP有两种输出语句
(1)print表达式
(2)echo表达式表
表达式中可以出现.号+号,常用的有以下几种形式
(1)字符串.字符串
(2)字符串.变量名
(3)字符串+字符串
(4)字符串+数值
注:在(1)(2)形式中,先统一为字符串,再运算,在(3)(4)形式中,先统一为数值,再运算,不能出现“字符串.数值”的形式
因为此处的.号出现二义性,举个栗子:

1
2
3
4
5
6
7
8
<?php
$a = 123;
echo "123" . "abc" . "<br>"; //输出:123abc
echo $a. "abc" . "<br>"; //输出:123abc
echo "123" + "abc" . "<br>"; //输出:123
echo 123 + "abc" . "<br>"; //输出:123

?>

输出每个表达式的类型和值

格式:
var_dump(表达式,…,表达式)

列如:

1
2
3
4
<?php
$x = true;
var_dump(2+3,$x); //输出:int 5,Boolean true
?>

PHP数据类型

​ PHP支持8种数据类型:int(整型)、float(浮点型)、string(字符串型)、boolean(布尔型)、array(数组)、object(对象)、NULL(空)和resource(资源)。
基本数据类型有4种:int(整型)、float(浮点型)、string(字符串型)、boolean(布尔型),有常量和变量之分。

(int)整型

​ 整型的值称为整型常量,简称整数,可以用十进制数,十六进制数,八进制数或二进制数(PHP 5.4.0)表示。十六进制数前面必须加0x,如 0x12;八进制数前面必须加0
如 012;二进制数前面必须加0b,如 0b1001

(float)浮点型

​ 浮点型的值称为浮点型常量,有小数形式和指数形式两种表示法,小数形式如:0.0526,指数形式如:5.26e-2。
在指数形式中,e的前后必须有数字,且e的后面必须为整数

(string)字符串型

​ 在PHP中,以英文单引号或双引号括住的一个或多个字符称为字符串常量。列如:’school’,”school”,’\n’
(1)单引号
​ 用两个单引号(‘)可以把一个字符串括起来,但要注意的是,如果这个字符串本身保护单引号(‘),则必须写成(\‘),
如果字符串本身包含(\‘),则必须写成(\\‘);如果字符串末尾刚好是一个反斜杠(\),则必须写成双反斜杠(\\)。
列如:

1
2
3
4
5
6
<?php
echo '这个符号\'是单引号'; //输出:这个符号'是单引号
echo '这个符号\\\'是反斜杠加单引号'; //输出:这个符号\'是反斜杠加单引号
echo '这个字符串以反斜杠结尾\\'; //输出:这个字符串以反斜杠结尾\
echo '这个字符串有\n,但不转义'; //输出:这个字符串有\n,但不转义
?>

(2)双引号
用两个双引号(“)可以把一个字符串括起来,但要注意的是,这些字符串有特殊转义序列,

序列 显示效果或含义
\ 反斜杠(\)
" 双引号(“)
\n 网页源文件中换行,但显示效果为空格(若无前后分隔时)
\r 同上
\t 网页源文件中水平制表符,但显示效果为空格(若无前后分隔时)
\v 垂直制表符
\e Esc
\f 换页
$ 美元符号($)
[0-7]{1,3} 此正则表达式匹配一个用八进制数表示的字符
\x[0-9A-Fa-f]{1,2} 此正则表达式匹配一个用十六进制数表示的字符

使用单引号和双引号的主要区别在于:单引号内出现的变量名不会被变量内容代替,但双引号内出现的变量名会被变量内容所代替。

举个栗子:

1
2
3
4
5
<?php
$str = "加油";
echo '中国$str!'; //输出:中国$str!
echo "中国$str!"; //输出:中国加油!
?>

(boolean)布尔型

​ 布尔型的取值只有两种:TRUE(真)和FALSE(假),也可以用小写的true和false。布尔值在显示时,true显示为1,false显示为空。

(array)数组

数组是一组“键名/值”,“键名”在数组中是唯一的,可以是整数或字符串,键名省略时默认为从0开始的连续整数。“值”是由相应的键名映射的结果,值可以不唯一

举个栗子:

1
2
3
4
5
6
7
<?php
$arr1 = array(2,4,5,6); //不指定键名,直接赋值
$arr2 = array('name'=>"王宝钏",'age'=>20,'married'=>false);
//指定键名
echo $arr1[3]; //输出:6
echo $arr2['name']; //输出:王宝钏
?>

(object)对象

“对象”这个概念是面向对象编程里面的概念,一时半会儿说不明白,后面再说

(NULL)空 类型

NULL类型只有一种取值,就是NULL(不区分大小写)。一个变量在下列情况下被认为是NULL

(1)被直接赋值为NULL

(2)尚未被赋值

(3)被unset()函数销毁。

例如:

1
2
3
4
5
6
7
8
9
10
<?php
$var1 = NULL;
$var2;
$var3 = "school";
unset($var3);
var_dump($var1); //直接输出NULL
var_dump($var2); //先显示未定义,再输出NULL
var_dump($var3); //先显示未定义,在输出NULL

?>

(resource) 资源类型

resource资源是一种特殊的变量,它相当于一个外部资源的引用,例如一个“数据库连接”就是一个资源。