时间:2021-07-01 10:21:17 帮助过:40人阅读
2.1 PHP语言基础
2.1.1 PHP文件格式
Helloworld.php
//输出Hello,World
echo "Hello,World";
?>
2.1.2 PHP标记
……?>
<%
echo("这是ASP的标记输出");
%>
echo("这是PHP的的简写标记输出");
?>
$expression=1;
if ($expression) {
?>
这是真的!
} else {
?>
这是假的!
}
?>
2.1.3 PHP 文件爱女的访问形式
PHP为服务端执行的语言,必须通过服务器解释才能执行
hello world!
2.1.4 PHP程序注释
echo "C++语言注释的方法即 //
"; // 采用C++的注释方法
/* 多行注释
对于大段的注释很有用的哦*/
echo "多行注释方法即 /*...*/
";
echo "Unix的注释方法即 #
"; # 使用UNIX Shell语法注释
?>
/*
echo "不能嵌套使用多行注释符号\n"; /* 嵌套使用会出错*/
*/
?>
2.1.5 PHP语法概述
类似于C/C++
2.2 PHP的变量
2.2.1 PHP的变量命名
PHP变量名是区分大小写的,和C语言是一致的;
变量名必须是以美元符号($)开始;
变量名开头可以以下划线开始;
变量名不能以数字字符开始。
2.2.2 PHP的数据类型
$True="我是变量" . True;
echo($True);
echo("
");
echo("我是关键字" . True)
?>
$int_D=2147483647; //十进制赋值
echo($int_D);
echo("
");
$int_H=0x7FFFFFFF; //十六进制赋值
echo($int_H);
echo("
");
$int_O=017777777777; //八进制赋值
echo($int_O);
echo("
");
?>
$float_1=90000000000;
echo($float_1);
echo("
");
$float_2=9E10;
echo($float_2);
echo("
");
$float_3=9E+10;
echo($float_3);
?>
$single_str='我被单引号括起来了!
';
echo $single_str;
$single_str='输出单引号:\'嘿嘿,我在单引号里面\'
';
echo $single_str;
$single_str='输出双引号:"我在双引号里面"
';
print $single_str;
$single_str='输双美元符号:$';
print $single_str;
?>
$Double_str="我被双引号括起来了!
";
echo $single_str;
$single_str="输出单引号:'嘿嘿,我在单引号里面'
"; //不需要转义符
echo $single_str;
$single_str="输出双引号:\"我在双引号里面\"
"; //需要转义符
print $single_str;
$single_str="输出美元符号:\$
"; //需要转义符
print $single_str;
$single_str="输出反斜杠:\\
"; //需要转义符
print $single_str;
?>
$heredoc_str =<< 你好 美元符号 $ 反斜杠 \ "我爱你" '我恨你' heredoc_mark; echo $heredoc_str; ?> 本实例演示字符串中对变量的引用: $str_1 = "我是变量的值!"; $str_2 = "str_1 : $str_1 echo $str_2; $str_1 = '我是变量的值'; $str_2 = 'str_1 : $str_1 echo $str_2; $str_1 = "我是变量的值!"; $str_2 = "str_1 : $str_12 echo $str_2; $str_1 = "我是变量的值!"; $str_2 = "str_1 : ${str_1}2 echo $str_2; ?> $a=""; //空字符串 $b = 3.1; //浮点型 $c= TRUE; //布尔型 $d = 2147483647; //整型 $e = 2147483648; //超过整型的范围,自动编程浮点型 $f= 0x80000000 ; //十六进制 $g="hi"; //字符串 $h=array(1,2); //数组 //分别输出类型 echo '$a类型是:'; var_dump($a); echo ' var_dump($b); echo ' var_dump($c); echo ' var_dump($d); echo ' var_dump($e); echo ' var_dump($f); echo ' var_dump($g); echo ' var_dump($h); ?> $a=0.1; $b='hi'; $c=True; if (is_numeric($a)) echo '$a是数值型 else echo '$a不是数值型 if (is_int($a)) echo '$a是整型 else echo '$a不是整型 if (is_string($b)) echo '$b是字符串型 else echo '$b不是字符串型 if (is_bool($c)) echo '$c是布尔型 else echo '$c不是布尔型 ?> $a=0.1; //定义变量 $b=0; //0值 $c=""; //空字符串 if (isset($a)) echo '$a已经被定义 else echo '$a没有被定义 if (!empty($a)) echo '$a不为空 else echo '$a为空 if (isset($b)) echo '$b已经被定义 else echo '$b没有被定义 if (!empty($b)) echo '$b不为空 else echo '$b为空 if (isset($c)) echo '$c已经被定义 else echo '$c没有被定义 if (!empty($c)) echo '$a不为空 else echo '$a为空 if (isset($d)) echo '$d已经被定义 else echo '$d没有被定义 if (!empty($d)) echo '$d不为空 else echo '$d为空 ?> 2.2.3 数据类型转换 echo gettype((bool) "") . " echo gettype((bool) 1) . " echo gettype((bool) -2) . " echo gettype((bool) "foo") . " echo gettype((bool) 2.3e5) . " echo gettype((bool) array(12)) . " echo gettype((bool) array()) . " ?> $a=123456; $b=123.456; $c=-1.3e8; //通过echo函数输出时,自动转换成 echo $a . "abc echo $b ."cde echo $c . "abc //字符串转换成数值 $foo = 1 + "10.5"; echo $foo . " $foo = 1 + "-1.3e3"; echo $foo ." $foo = 1 + "bob-1.3e3"; echo $foo ." $foo = 1 + "bob3"; echo $foo ." $foo = 1 + "10 Small Pigs"; echo $foo ." $foo = 4 + "10.2 Little Piggies"; echo $foo ." $foo = "10.0 pigs " + 1; echo $foo ." $foo = "10.0 pigs " + 1.0; echo $foo ." $foo = 1 + "010"; echo $foo ." $foo = 1 + "0x10"; echo $foo ." $foo = 1 + "\x10"; echo $foo ." $bar = 1 + "\x35"; //0x35 is ASCII for '5' echo $foo ." $foo = 1 + "0x\x41\x31"; //0x41 is ASCII 'A'; 0x31 is '1' echo $foo ." ?> 2.2.4 PHP中的预订义变量 echo '提交方法为:'. $REQUEST_METHOD; echo ' ?> echo '主机名称:'.$HTTP_SERVER_VARS['HTTP_HOST']; echo ' ?> echo '当前执行脚本文件:'.$_SERVER['PHP_SELF']; echo ' ?> 2.2.5 变量的引用 $myName="little"; $YourName=&$myName; //引用变量 $myName="littlePig print($YourName); $YourName="littleCat print($myName); ?> 2.2.6 变量的变量 $myStr="myName"; //设定变量 $$myStr="Marry"; //设定变量的变量即$$myStr echo $myStr; //输出变量 echo " echo $$myStr; //输出变量的变量 echo " echo $myName; //直接输出$myName和使用$$mystr结果一样 echo " $myStr="yourName"; if (!isset($$myStr)) echo '$$myStr变量不存在呢'; ?> 2.2.7 常量 define("CONSTANT", "Hello world\n"); echo CONSTANT . " echo Constant . " define("GREETING", "Hello you\n", true); echo GREETING. " echo Greeting. " define("MAXSIZE", "100\n"); echo MAXSIZE; //输出 echo constant("MAXSIZE"). " echo(defined("ONE")). " define("ONE","Hello,One"); echo(defined("ONE")). " ?> echo "程序当前行:". __LINE__; echo " echo " ?> 2.3 PHP的运算符 2.3.1 算术运算符 $ONE= 1; $TWO= 2; $TREE= 3; echo $ONE+$TWO . " echo $ONE-$TWO . " echo $ONE*$TWO . " echo $ONE/$TWO . " echo $TREE%$TWO. " ?> 2.3.2 赋值运算符 $a= 2; $a +=3; //$a=$a+3,值为 echo $a . " $a -=3; //$a=$a-3,值为 echo $a . " $a *=3; //$a=$a*3,值为 echo $a . " $a /=3; //$a=$a/3,值为 echo $a . " ?> 2.3.3 位运算符 $a= 7; $b= 14; $myVal= $a & $b; //位与 echo $myVal. " $myVal=$a | $b; //位或 echo $myVal. " $myVal= $a ^ $b; //位异或 echo $myVal. " $myVal= ~$a; //为取反 echo $myVal. " ?> 2.3.4 三元运算符 2.3.5 比较运算符 echo("10小于吗:" . ((10<10)?"True":"False") . " echo("10小于等于吗:" . ((10<=10)?"True":"False") . " echo("10大于吗:" . ((10>10)?"True":"False") . " echo("10大于等于吗:" . ((10>=10)?"True":"False") . " echo("10等于吗:" . ((10==10)?"True":"False") . " echo("10不等于吗:" . ((10!=10)?"True":"False") . " ?> 2.3.6 字符串运算符 $a="Hello "; $b="World"; $ab=$a . $b ." echo $ab; $a="some"; $a .="thing" . " echo $a; $a="24 five 6" + 6; echo $a . " $a="24five 6" + 6; echo $a . " $a="five 6" + 6; echo $a . " $a="24 five" . 6; echo $a . " $a="24five" . 6; echo $a . " ?> 2.3.7 递增和递减运算符 $a=20; echo "a++:" . $a++ ." echo "变量a的新值:" . $a ." $a=20; //重新赋值 echo "++a:" . ++$a ." echo "变量a的新值:" . $a ." $a=20; //重新赋值 echo "a--:" . $a-- ." echo "变量a的新值:" . $a ." $a=20; //重新赋值 echo "--a:" . --$a ." echo "变量a的新值:" . $a ." ?> 2.3.8 逻辑运算符 2.3.9 运算符优先级 2.4 表达式 2.5 控制语句 2.5.1 条件语句 $achievement=91; if ($achievement<60) echo "你不及格"; elseif ($achievement>=60 && $achievement<70) echo "你刚刚及格了"; elseif ($achievement>=70 && $achievement<80) echo "你得了良好"; elseif ($achievement>=80 && $achievement<90) echo "你很优秀哦!"; else echo "你兼职太棒了!" ?> switch (date("D")) { case "Mon": echo "今天星期一"; break; case "Tue": echo "今天星期二"; break; case "Wed": echo "今天星期三"; break; case "Thu": echo "今天星期四"; break; case "Fri": echo "今天星期五"; break; default: echo "今天放假"; break; } ?> 2.5.2 循环语句 /* 应用,每个条件都有*/ for ($i = 1; $i <= 10; $i++) { print $i. "-"; /* 应用,省略第个表达式*/ print " for ($i = 1; ; $i++) { if ($i > 10) { break; } print $i. "-"; } print " /* 应用,省略个表达式*/ $i = 1; for (;;) { if ($i > 10) { break; } print $i. "-"; $i++; } print " /* 应用*/ for ($i = 1; $i <= 10; print $i. "-", $i++); print " /* 应用 */ for ($i = 1; $i <= 10; $i++) :print $i;print "-";endfor; ?> /* 应用*/ $i = 1; while ($i <= 10) { print $i++ . "-"; } print " /* 应用*/ $i = 1; while ($i <= 10): print $i . "-"; $i++; endwhile; print " /* 应用*/ $i = 1; while ($i<20): print $i . "-"; $i++; if ($i>10) break; endwhile; ?> 2.5.3 break和continue语句 $i = 0; while (++$i) { switch ($i) { case 5: echo "At 5 break 1; /* 只跳出switch循环*/ case 10: echo "At 10; quitting break 2; /* 跳出switch和while循环*/ default: break; } } ?> $i=0; while ($i++<5) { if ($i==2) { // 跳出,也就是不会输出i am 2 continue; } echo "i am $i } $i = 0; while ($i++ < 5) { echo "外层 while (1) { echo " 中间层 while (1) { echo " 内层 $i=6; continue 3; } //因为每次到内层的时候,就跳到第一层,不会被执行 echo "我永远不会被输出的~~. } echo "我也是不会被输出的~~. } ?> 2.6 数组 2.6.1 数组类型 枚举数组 关联数组 多维数组
"; //双引号字符串中包含变量$str_1
'; //单引号中包含字符串的值
"; //引用的变量名后,多了个字符即$str_12
"; //引用的变量名后,多了个字符即$str_12
$b类型是:';
$c类型是:';
$d类型是:';
$e类型是:';
$f类型是:';
$g类型是:';
$h类型是:';
';
';
';
';
';
';
';
';
';
';
';
';
';
';
';
';
';
';
';
';
';
';
';
';
"; // bool(false)
"; // bool(true)
"; // bool(true)
"; // bool(true)
"; // bool(true)
"; // bool(true)
"; // bool(false)
";
";
";
";
";
";
";
";
";
";
";
";
";
";
";
";
网络协议为:' .$SERVER_PROTOCOL;
服务器根路径:'.$HTTP_SERVER_VARS['DOCUMENT_ROOT'];
当前执行脚本文件绝对路径:'.$_SERVER['SCRIPT_FILENAME'];
";
";
";
";
";
"; // 输出"Hello world."
"; // 输出"Constant" ,表示没有该常量
"; // 输出"Hello you."
"; // 输出"Hello you.",因为设定大小写不敏感
"; // 输出
";
"; //如果定义返回True,使用echo输出显示
操作系统:".PHP_OS;
PHP版本:" .PHP_VERSION
"; //加
"; //减
"; //乘
"; //除
"; //取余数
";
";
";
";
";
";
";
";
");
");
");
");
");
");
"; //字符串连接符号.
"; //赋值运算符.=
";
";
";
";
";
"; //后加
";
"; //先加
";
"; //后减
";
"; //先减
";
";
";
";
";
";
";
\n";
\n";
";
\n";
\n";
\n";
\n";
\n";
$student=array("0"=>array("name"=>"James","sex"=>"male","age"=>"28"),
"1"=>array("name"=>"John","sex"=>"male","age"=>"25"),
"2"=>array("name"=>"Susan","sex"=>"female","age"=>"24"));
Print $student[2][age]
?>
2.6.2 数组初始化
使用数组标识符
2.6.3 数组的应用
// 创建一个简单的数组
$array = array(1, 2, 3, 4, 5);
print_r($array);
echo "
";
// 现在删除其中的所有单元,但保持数组本身的结构
foreach ($array as $i => $value) {
unset($array[$i]);
}
print_r($array);
echo "
";
// 添加一个单元(注意新的键名是5,而不是你可能以为的0)
$array[] = 6;
print_r($array);
// 重新索引:
$array = array_values($array);
$array[] = 7;
print_r($array);
?>
2.7 函数
2.7.1 内置函数
2.7.2 自定义函数
2.7.3 函数变量的作用域
2.8 日期和时间处理
2.8.1 获取日期和时间
2.8.2 使用getdate函数获得日期信息
2.8.3 使用mktime函数取得一个日期的时间戳