昨日回顾数据类型 标量数据类型 整型int integer 浮点型float 字符型string 布尔型boolean
复合数据类型 数组array 对象object
特殊数据类型 null 资源resource
php中的常量 define(“常量名”,值); 1、 常量名前不能加$ 2、 常量一经定义就不能更改其值 3、 常量可以在任何位置定义,在任何位置访问 const 常量名=值;
魔术常量 __line__ __file__ __function__ __class__
变量: 变量相关的函数 empty() 判断一个变量是否为空,及其值是否为false 0、null、0,0、false、”” isset() is_object(); is_int() is_bool(); is_string(); is_array
php中数据传递的类型 赋值传值 整型、浮点型、字符型、布尔型、数组、null 引用传值 对象 资源resource
php中的类型强制转换int integer 将一种数据类型强制转换不整型 float double real 将一种数据类型强制转换为浮点类型 string 将一种数据类型强制转换为字符类型 bool 将一种数据类型强制转换为布尔类型 array 将一种数据类型强制转换为数组 object 将一种数据类型强制转换为对象 对象的转换为整型和布尔型时也同数组一样 JS中测试数据类型typeof(); php中测试数据类型:gettype($v); 返回数据类型
php中的数组js中数组的定义 var arrA=[10,20,30]; var arrB=new Array(10,20,30,['a’,’b’,’c’]); arrA[1]=50;
php中的数组分两类 索引数组 定义: $arrA=array(10,20,30);
获取数组长度: count(数组名); count($arrA)
$arrA[0]=50; $arrA[]=60; 关联数组 php中在为创建数组时,可以同时为每一个元素指定一个名子(键名),也就是每一个元素下标 $arr=array(键名0=>值0, 键名1=>值1, 键名2=>值2, 键名3=>值3); 访问关联数组元素: 数组名[“键名”];
混合数组 $arr=array(键名0=>值0,值1, 键名2=>值2,值3);
php中的foreach循环结构 foreach语法结构 第一种: foreach(数组名as 变量){ echo变量; }; 当foreach进行第一循环会将数组中的第一个元素的值赋予变量,第二次循环时将第二个元素的值赋给变量,依次循环下去,至到数组中的元素被遍历结束 第二种: foreach(数组名as变量1=>变量2){ echo变量1.变量2; }; 当foreach进行第一次循环会将数组中的第一个元素的键名值赋予变量1,将第一个元素的值赋予变量2; 第二次循环会将数组中的第二个元素的键名值赋予变量1,将第二个元素的值赋予变量2;至到数组中的元素被遍历结束
php中的多维数组JS中的二维数组 var arrA=new Array(); arrA[0]=[10,20,30]; arrA[1]=new Array('zhangsan’,20,’男’); var arrB[0][0]=100; //JS中不允许 php中的二维数组 定义: 第一种: $arrA[0][0]=100; 第二种: $arrA=array( 'stu0’=>array('name’=>’zhangsan’,’age’=>20,’sex’=>’男’), 'stu1’=>array('name’=>’lisi’,’age’=>22,’sex’=>’男’), 'stu2’=>array('name’=>’wangwu’,’age’=>26,’sex’=>’男’), 'stu3’=>array(’wangwu’,26,’sex’=>’男’) ); $arrA[10][10]=100;
对维数组的访问: 数组名[行坐标][列坐标] $arrA[10][10]; $arrA['stu0’]['name’]; $arrA['stu3’][0];
数组元素的删除JS中删除一个数组元素: delete(数组名[下标]); JS中delete清除数组元素的值时,数组长度不变 JS中数组元素的下标是连续 php中删除一个数组元素: unset(数组名[下标]); php中使用unset删除一个数组元素时,数组长度更改 php中数组元素的下标可以不连续
课堂案例:
函数是段完成某一功能的代码段 定义: function函数名(形参1,形参2,形参3…..){ //函数体 [return值]; }
函数的调用 函数名(实参1,实参2,实参3…);
1、 形参也一个变量,只能在函数内部使用,对外部是不可见的 2、 php中形参也可以赋值(形参的默认值),当没有为具有默认值的形参传值时,使用的是默认值,当为具有默认值的形参传递值的时候使用的是被传递进来的值 3、 具有默认值的形参一般是放在形参列表的最后 4、 php在函数调用是传递的参数的个数,不能少于不具有默认值的形参个数 5、可以在形式参数前添加”&”,将实参以“引用传递”的方式传递给形参
调试函数exit //终止脚本执行,不输出提示,不再执行其后代码 exit(“提示信息”); //终止脚本执行,输出提示,不再执行其后代码 die //终止脚本执行,不输出提示,不再执行其后代码 die(“提示信息”); //终止脚本执行,输出提示,不再执行其后代码
php中的作用域JS中的作用域分两种:全局作用域,局部作用域 局部作用域:定义在函数内部的变量的作用域就是局部作用域 全局作用域:定义在函数外部的变量的作用域就是局部作用域
PHP中的作用域分三种: 第一种:外部作用域 定义在函数外部的变量,其作用域就是外部作用域
第二种:内部作用域 定义在函数内部的变量,其作用域就是内部作用域
第三种:全局全用域 global关键字(全局) 语法: global 变量; a、 在函数外部定义一个变量,在函数内部使用global关键字进行声名,则该变量的作用域即为全局作用域
b、 在函数内部先使用globa声名一个变量,再为这个变量赋值,则该变量的作用域即为全局作用域
原理:当使用一个globa声名一个变量时,php去内在的全局区去查找该变量,如果找到则使用该变量,如果未找到则在全局区定义一个变量
static变量在函数内部使用static声名的一个变量叫静态变量 function func1(){ static $v1=100; $v1++; echo $v1."<br/>"; } 1、 静态变量只被初始化一次 2、 静态变量不会随函数的调用与结束而消失,其依然保留,但静态变量不能在外部访问;当再次调用函数时,仍然可以使用该变量上次运行时的值班 3、 静态变量只能为其赋予字符值数值,不能是一个表达式。 4、 当在多次调用函数时,仍然保留某一变量的值是,可以考虑使用静态变量,全局变量也可实现。但使用全局变量不安全
php中的字符串得函数strlen($str); //获取字符串长度 trim($str1[,$str2]); //如果省略$str2参数,则是去除字符串$str1两边的空白符; //如果不省略$str2参数,则是去除字符串$str1两边的$str2字符; ltrim($str1[,$str2]) rtrim($str1[,$str2]); strstr($str,$sub); //在$str中查找$sub第一次出现的位置,并截至了字符串末尾 strchr($str,$sub); 是strstr的别名函数 strrchr($str,$sub); //在$str中查找$sub最后一次出现的位置,并截至了字符串末尾 substr(); //在$str中从start位置截取字符串,如果len省略则截取到字符串末尾,如果不省略len则截取到len前一个字符,位置从’0’开始算起 strpos($str,$sub); //返回字符串$sub在$str中第一次出现的位置 strrpos($str,$sub); //返回字符串$sub在$str中最后一次出现的位置 explode(’分隔符’,$str) //隔符加字符串分划成数组 join(); // implode(); addslashes(); //在一些特殊字符前面添加”\” 特殊字符’、”、\、null //一般用在将数据存到数据库中 nl2br(); //将文本中的\r与\n等转换为”<br/>” htmlspecialchars (); //将html中一特殊字符转换成转译符 htmlspecialchars_decode(); //htmlspecialchars()函数的逆操作
数学计算函数 abs(); //取绝对值 ceil(); //向上取整 floor(); //向下取整 round($n[,精度倍数]); //保留指定精度位数,并进行四舍五入 rand($min,$max);//获取随机整数 pow($m,$n); //m的n次方 sqrt($m); //获取m的平方根 max($n1,$n2); //获取n1与n2中的最大数 min($n1,$n2); //获取n1与n2中的最小数
数组list($v1,$v2,$v3…..); //这是一种语法结构,将数组中的元素赋值给$v1与$v2 list不能使用关联数组 count($arr); array_values($arrA); //返回关联数组中所有的值,并组织成为一个索引数组 array_keys(); //返回关联数组中所有的键,并组织成为一个索引数组 in_array($str,$arrA); //在数组$arrA中查找$str字符,如果有则返回true,没有返回false; array_key_exists($key,$arrA); //要数组$arrA中查找是否存在$key的键,如果存在返回true,如果不存在返回false; implode($arrA,’分隔符’); //将数组以指定的分隔符拼接成字符串 array_shift(); //在数组前面删除一个元素,数组长度改变,并返回被删除的元素 array_unshift(); //在数组前面添加一个元素, array_push(); //在数组后面添加一个元素, array_pop(); //在数组前面删除一个元素, array_walk_recursive($arrA,”函数名”); array_walk(); //自动创建sql语句
时间 time(); //取得时间戳 返回从时间原点至当前时间的秒数 mktime(); //取得指定时间的时间戳 mktime(时,分,秒,月,日,年);
date(“时间格式”,时间戳); // idate(); microtime(); |
|