*
* <%****%>
*
* 注释: \*多行注释*\(实际用反方向斜线)
* // 单行注释 (C语言风格)
* # 单行注释 (Unix风格)
* 调试:将PHP.ini中的display_errors=On 才显示具体错误
* 输出:echo 或者 print
*
*二 PHP基本语法和数据类型
* 1,基本语法: htm和php混编; 语句以英文分号;结束 ; 定义及使用变量。
* 2,PHP数据运算类型:
* 四种标量类型: boolean 布尔型 理解为真假型 $bo=TRUE; $bo=FALSE;
* integer 整型 理解为整数 $bo=1; $bo=-12;
* float/double 浮点型 理解为小数型 $bo=1.001; $bo=3.1415926;
* string 字符串 $bo="字符串 or EN Word"
* 两种复合类型: array 数组 $bo=array(1,2,3,4); $bo=array("A"=>1,"B"=>2);
* object 对象
*
*三 PHP常用运算类型
* 1,算术运算:遵循数学运算规则,从左到右, 括号>乘除>加减
* 2,赋值运算:把值写入变量: $a=1; (把右边的值赋予左边的变量)
* $a+=2; (相当于$a=$a+2; 输出结果为3)
* $a*=3; (相当于$a=($a+2)x3; 输出结果为9)
* 3,比较运算:确定两个数之间的关系,输出值为布尔型值
* 1==2 1等于2 echo:FALSE;
* 3!=2 3不等于2 echo:TRUE;
* "ok"=="ok" 比较字符串是否相同 echo:TRUE;
* 1==="ok" 判断数值类型及数值本身 echo:FALSE;
* 4,逻辑运算:先将比较两边转换成布尔类型,再执行他们的关系,输出值为布尔值
* 逻辑“与”关系 1&&1 0&&1
* 逻辑“或”关系 1||1 0||1
* 逻辑“亦或”关系 xor (待学习)
* 5,递增递减运算:只操作变量的一种运算
* $a++ 相当于先输出一次$a,下次再遇到$a时输出运算$a++后的值
* ++$a 相当于先输出运算$a++后的值,下次再遇到$a时输出新的$a的值
* $b--; --$b; 同理
* <举例如下:>
*/ echo "递增递减预算举例".":"."
";
$b=6;
$c=6;
echo $b++."
"; //第一次遇到$b,先直接输出值“6”
echo $b."
"; //第二次遇到$b,则进行运算$b++后输出值“7”
echo $b++."
"; //第三次遇到$b,先输出第二次运算后的值“7”
echo $b."
"; //第四次遇到$b,则在第三次的结果上运算$b++后输出值“8”
echo ++$c."
"; //先进行运算后输出值“7”
echo $c."
"; //第二次遇到$c,则输出上次运算后的值“7”
/*
*四 PHP条件语句
* 1,if语句:
* if(expr) if(expr){ if(expr){
* echo TRUE echo TRUE echo TRUE
* else }else{ }
* echo FALSE echo FALSE elseif(expr){
* } echo CON
* }else{
* echo FALSE
* }
* 2,switch条件语句:与if语句效果相同,书写习惯不一样,举例如下:
*/ echo "switch与if语句举例".":"."
";
$d=3;
switch($d){
case 0:
echo "输出0";
break; //不写貌似也可以正常输出?
case 1:
echo "输出1";
break; //不写貌似也可以正常输出?
case 2:
echo "输出2";
break; //不写貌似也可以正常输出?
default:echo "默认值" ; //与所有case比较均无结果时输出的值
}
echo "
";
if($d==0){
echo "输出0";
}elseif($d==1){
echo "输出1";
}elseif($d==2){
echo "输出2";
}else{
echo "默认值";
}
echo "
";
/*五 PHP循环语句:
* 1,break n; 循环控制语句:中断/跳出n条循环
* 2,do...while 循环语句:
* do{...}while(expr) 先执行再判断
* while(expr){...} 先判断再执行
* 3,for循环:书写最复杂的循环结构
* for($a=1;$a<=10;$a++){echo $a;}
for(无条件执行; 比较运算; 循环条件){输出值} <三种条件顺序不能乱,且如果所有条件赋值为空则形成无限循环!>
*/
echo "for循环+if条件语句举例".":"."
";
for($a=1;$a<=10;$a++){
if($a==5)break 1;
echo "循环".$a."
";
}
echo "
";
/*六 创建和修改数组
* 1,创建和修改
* 1) 通过array函数创建数组: array(key=>value,key=>value,.....)
* 例: */
$arr1=array(3,5,7,9); //省略key的形式
$arr2=array("id"=>2,"title"=>6); //典型方式
print_r($arr1); //打印数组函数
echo "
";
print_r($arr2);
echo "
";
echo $arr1[0]."
"; //输出数组中的某个值 echo $arr[key];
// 2) 通过 $arr[key]="newvalue"; 修改数组
$arr1[0]="8";
echo $arr1[0]."
";
/* 2,数组与数组函数
* count($arr); 统计数组条数
* is_array($arr); 判断是否是数组
* explode("key",value); 以分隔符"key"将value拆分为数组,可以看做是另外一种创建数组的方式
*/
$arr3=array(1,3,5,7,9,11);
echo count($arr3)."
";
if(is_array($arr3)){
echo "是数组"."
";
}else{
echo "不是数组"."
";
}
$a="1980-1981-1982-1983-1984";
$arr4=explode("-",$a);
if(is_array($arr4)){
echo "是数组"."
";
}else{
echo "不是数组"."
";
}
print_r($arr4);
echo "
".$arr4[1]; //适用于只取用字符串中的某个值
echo "
";
// 3,foreach遍历数组函数: foreach($arr as $key=>$value){...} //$key可以省略
foreach($arr4 as $key=>$value){
echo "$key
";
echo "$value
";
echo "需要的关键字$key 需要的值 $value
";
}
echo "
";
/*七 PHP函数及自定义函数
* 1,PHP函数分为系统内部函数及自定义函数
* 2,自定义函数:
* 使用function函数定义自定义函数: Function fouc_name($val){...} //$val可以省略
* 函数命名跟自定义变量一样,只能使用 _,A~Z,a~z
* 自定义函数中的变量是局部的,函数外不生效
* 使用global全局变量时,在函数外才可使用变量(不建议)
* 为防止全局变量混乱可以使用unset($val)删除一个变量
* 3,自定义函数的使用:
* 1) return 返回函数内部值
* 2) 传值:接收与选择性接收
* 3) function_exists('') 判断函数是否存在
* 4) 使用&符号引用自定义函数中的返回值到函数外!
*/
$b=date("Y-m-d"); //内部函数
echo "$b
";
$c=md5("php"); //内部函数
echo "$c
";
function _pr1(){
echo "这是个输出自定义函数
"; //自定义函数举例
}
_pr1();
function _pr2(){
return "这是个返回自定义函数
"; //retur返回函数举例
}
$d=_pr2();
echo "$d
";
function _pr3($val){
return "这是个返回自定义函数$val
"; //$val传值接收举例
}
$e=_pr3("吗?");
echo "$e
";
function _pr4($val,$val2=1){
$a=$val+$val2;
return $a;
}
$f=_pr4(6); //$val传值选择性接收只赋一个$val值举例
echo "$f
";
function _pr5($val,$val2=1){
$a=$val+$val2;
return $a;
}
$g=_pr5(6,8); //$val传值选择性接收赋两个值举例: $val2的值1被8取代
echo "$g
";
function _pr6($val,$val2=1){
global $g; //全局变量举例:将函数外的$g引用到函数内使用
$a=$val+$val2+$g;
return $a;
}
$h=_pr6(6,8);
echo "$h
";
if(function_exists('_pr')){ //判断函数是否存在举例,注意单引号!
echo "函数存在
";
}else{
echo "函数不存在
";
}
//下面是 &符号 引用返回值举例:
$A="today";
$B="monday";
function _pr7($A,&$B){ //此处输入&符号,之后函数外$B的值将被改变为函数中的返回值
$B="$A is $B";
echo "函数中变量A与变量B的值为:
" .
"变量A:$A
" .
"变量B:$B
";
}
_pr7($A,$B);
echo "
函数中变量A与变量B的值为:
" .
"变量A:$A
" .
"变量B:$B
"; //再次遇到$B之后,值已从"monday"变为函数_pr7中的返回值"today is monday"
?>