处理HTML表单
<input type="text" name="city"/>
通过$_REQUEST['city'];访问,$_REQUEST city大小写拼写必须要完全相同(name属性值)
$_REQUEST是一个特殊的变量类型,称为超全局变量(后面详细讲)
if(condition){
//Do something
}elseif(condition2){
//Do something else
}else{
//Do something different
}
isset()函数用于检测一个变量是否被设置,除了NULL以外,都认为是真(包括0 FALSE和空字符串,NULL表示没有设置值)
empty()函数检查一个变量是否具有空值:空字符串 0 NULL FALSE
php支持索引数组(数字作为键) 关联数组(字符串作为键)
打印一条带有关联数组的字符串会导致错误
echo "IL is $states['IL']."//Wrong
正确:用{}包围数组
echo "IL is {$states['IL']}."
超全局数组
php默认多个预定义的数组:$_GET 、$_POST 、$_REQUEST 、$_SERVER 、$_EVN 、$_SESSION 、$_COOKIE
$_GET储存着所有通过get方法发送到PHP脚本的变量和值
要测试提交的值是否是数字,使用函数is_numeric()函数
创建数组
$band[]='Bret';
$band['fan']='Bret';
也可以使用array()函数
$states=array('IA'=>'Iowa','MD'=>'Maryland');
$artists=array('Sun','Mon','Tue');
创建连续的数组,使用range()函数
$ten=range(1,10);
$alphabet=range(a,z);
访问数组可以使用foreach循环
foreach($array as $value){
//Do something
}
foreach($array as $key=>$value){
echo"The value at $key is $value.";
}
count()确定数组中元素的个数
$num=count($array);
数组和字符串相互转化
$array=explode(separator,$string);
$string=implode(glue,$array);
数组排序
sort()按值排序,丢弃原来的键
asort()按值排序,保持原来的键
ksort()按键排序
arsort()按字母顺序
kasort()按值顺序排序,键保存不变
shuffle()随机排序
创建动态Web站点
PHP有4个用于外部文件的函数 include() include_once() require() require_once()
其中任何一个函数的结果是:获取包含文件的所有内容,并在调用该函数的脚本中删除该文件,php将把包含代码视作HTML可直接发送到浏览
相对路径(当前脚本位于ex1文件夹中)
include('../ex2/file.php');//2个句点表示移动到上一级文件夹
include()与require()函数在正确工作时表现一样,失败时会有不同处理方式
include()打印错误,脚本继续运行
require()打印错误,脚本停止运行
*_once()表示只包含一次
在include()之前代码中定义的变量可以被include()代码所用
在include()中的变量也可以被include()之后的代码所用
函数拥有自己的作用域,即函数内部不能使用外部的变量,外部不能使用内部的变量
可以利用超全局变量$_GET $_POST $_REQUEST访问,也可以添加元素到$GLOBALS数组中,一般情况下要避免使用全局变量