1 表单域
eg:
表单域这些名称将在php脚本中复用,因此给表单域定义有意义的名称是非常重要的,这样便于我们记住他们。
2 在HTML中嵌入PHP
通过浏览器是无法直接查看到嵌入的php代码的,但是可以看到PHP运行后的代码,用该脚本的输出代替了脚本本身。浏览器不需要理解php。
2.1 PHP标记
PHP标记有两种不同风格
1)XML风格
该风格的标记可以在XML(可扩展置标语言)文档中使用。
2)简短风格
该风格最遵循SGML(标准通用置标与语言)处理说明的风格,使用该风格需要在配置文件中启用short_open_tag选项,或者启用短标记编译php。
该风格不推荐使用,因为它在许多环境下默认是不支持的。
2.2 空格
在php中的间隔字符,例如换行、空格和tab,它们都会被认为是空格。在HTML中也存在此特性。
eg:
echo "hello";
echo "hello";
和
echo "hello";echo "hello";
是等价的,但是第一种更方便代码的阅读。
2.3 注释
/* */
//
#
3 添加动态内容
<?php
echo "<p>hello,time is ".date('H:i, jS F Y')."</p>";
?>
结果:
3.1 调用函数
php具有一个功能丰富的函数库,开发人员可以使用这个函数库开发web应用,函数库大部分都是需要传入一部分数据,然后再返回一些数据。
date(‘H:i, jS F Y’)
我们将括号内的字符串传递给函数,这个字符串就是函数的自变量或参数。
3.2 使用date()函数
H 是小时,如果是个位数,会在前面补0。
i 是分钟,如果是个位数,会在前面补0。
j 是该月的日期,不需要补0。
s 表示顺序后缀,本例为rd。(?)
F 是月份的全称。
Y 是该年。
4 访问表单变量
4.1 表单变量
表单域定义的变量可以在后台php代码中接受到,可以使用get、post、request三种方法接收。
4.2 变量和字面量
变量:$tired
字面量:' tires<br />' 它的值就是来自其字面值。
4.3 php中字符串的类型
1."xxxxx"中的内容是解析执行的
2.'xxxxx’中的内容是原样输出。
3.heredoc语法
5 理解标识符
标识符就是变量的名称。(函数和类的名称也是标识符)
除了从HTML表单中传入的变量外,你还可以声明你自己的变量。
php的特性之一是它不要求在使用变量之前声明变量。当第一次给一个变量赋值时,便是创建了这个变量。
我们也可以将变量赋值给变量。
6 PHP的变量类型
6.1 PHP的数据类型
Integer(整数):表示整数。
Float(浮点数,也叫double,双精度):用来表示所有的实数。
String(字符串):表示字符串。
Boolean(布尔):用来表示true或者false。
Array(数组):用来保存具有相同类型的多个数据项。
Object(对象):用来保存类的实例。
另外,还有3个特殊的数据类型:NULL(空)、resource(资源)、callable。
6.2 类型强度
PHP是一种弱类型,PHP中的变量能“自动地”获得输入的数据类型,并转换为相同类型的数据。
6.3 类型转换
eg:
$bianliang=0;
$bianliang2=(float)$bianliang;
6.4 可变变量
PHP允许我们可以动态地改变一个变量的名称。
原理:用一个变量的值作为另一个变量的名称。
例如:
$name1='name2';
$$name1=5 等价于 $name2=5
1.8 声明和使用常量
常量值一旦被设定后,在脚本的其他地方就不能再更改。
我们使用define函数定义常量,常量前面没有$符号。
例如:
define(‘CHANGLIANG’,100); //常量习惯用大写字母,非必须。
如果要使用一个常量的值,可以直接使用其名称。
如:echo CHANGLIANG;
PHP中自定义了一些常量和变量,我们可以通过phpinfo()函数查看。
变量和常量的一个区别是,常量只可以保存布尔值、整数、浮点数或字符串数据,这些数据都是标量数据。
7 理解变量的作用域
作用域值得是一个脚本中某个变量在哪些地方可以使用或可见。
$_GET和$_POST数组以及一些特殊变量都具有各自的作用域规则,这被称为超级全局变量,他们可以在任何地方使用和可见,包括内部函数和外部函数。
例如:
$_GET、$_SERVER、$_FILES、$_SESSION。
8 使用操作符
8.1 算术操作符
+、-、*、/、%(取余)
我们可以将-号当作一个一元操作符,即只有一个运算对象。表示负值。
算术运算符通常用于整数或双精度数。如果他们应用与字符串,PHP会试图将这些字符串转化为数字,如果包含‘a’或‘A’字符,他就会被当作科学表示法并被转化为浮点数,否则将会被转化成整数。PHP会在开始处找数字,如果没找到数字,该字符串值为0。
8.2 字符串操作符
我们可以使用(.)将字符串连接。
8.3 赋值操作符
赋值操作符(=),其读法为“被设置为了”。
复合赋值操作符:
eg:$a += 5; 等价于 $a = $a+5;
(每一个算数操作符和字符串连接都有一个对应的复合操作符。如-+、*+、/+、.+等)
前置递增递减(++$a)和后置递增递减($a++)操作符
前置:
先做+1运算,再打印$a的值。
后置:
先打印$a的值,再做+1运算。$a的值也随之变化。
引用操作符(&)
引用操作符就像是一个别名:
eg:
$a=5;
$b=&$a;
$a=7
这时$a和$b的值都为7,$b也就相当于一个别名了。
$a和$b都指向了相同的内存地址,你可以重置变量不指向原来的内存地址:
unset($a)
重置操作不会影响$b的值。
8.4 比较操作符
等于操作符(==)
判断两个值是否相等,相等返回true,不相等返回false。
其他比较操作符
=== 恒等(需要数值和数值类型都相等。)
!= 不等
!== 不恒等
<> 不等
8.5 逻辑操作符
&& and
|| or
xor xor
! not
and和or的优先级比&&和||要低。
8.6 位操作符
& 按位与
| 按位或
~ 按位非
^ 按位异或
<< 左位移
(eg:$a<<$b,将$a左移$b位。)
>> 右位移
8.7 其他操作符
“,”用来分割函数参数和其他列表项。
“new”用来初始化类的实例。
“->”访问类的成员。
if-else的表达式写法
<?php
$b=30;
$c=$a>=50 ? 'pass' : 'no';
echo $c
?>
错误抑制操作符
@ 可以在任何表达式前面使用
eg:$a=@(57/0)
执行操作符(超级牛逼)
“ `` ”一对反单引号。
数组操作符
[]、=>
类型操作符
instanceof
9 操作符优先级
从左到右,优先级降低:
& ^ | && || ?: +=等 print and xor or ,
10 使用变量处理函数
10.1 测试和设置变量类型
gettype()返回传入的变量类型。
settype()改变传入的变量类型。
10.2 测试变量状态
isset() 变量存在返回true,否则false。
empty() 用来检查一个变量是否存在,存在返回false,不存在返回true。
11 根据条件进行决策。
while循环:
$a=50;
while($b<=250){
echo $b;
$a+=50;
}
for循环:
for($a=50; $b<=250; $b+=50){
echo $b;
}
功能方面while和for循环是等价的
foreach循环语句,用于数组的使用。
do...while循环
即使我们的条件在一开始就是错误的,但循环在检查条件之前还是会执行一次。
$num=100;
do{
echo $num
}while ($num<1);
12 跳出脚本
break 跳出本次循环,从循环体后面的第一条语句开始执行。
continue 跳到下一次循环。
exit 终止PHP程序。
13 使用其他控制结构的语法
代替花括号:
{ 可用 : 代替
} 可用 endif、endswitch、endwhile、endfor、endforeach代替
eg:
if ($a==0) :
echo "hello!";
exit;
endif;