1、 4.include_once(filename) 5.注意: $a=1; include(“myphp.php”); /在myphp.php文件中仍然可以访问 $a的值第二章:语法基础一、语法基础1.数据类型 1)类型转换 方法一: /不改变原操作数的类型 (int)$x; /或 (integer)$x; (real)$x; /或 (double)$x; 或 (float)$x; (string)$x; (array)$x; (object)$x; 方法二: Doubleval($x); /将参数视为双精度数 Intval($x); /将参数视为整型数 Strval($x): /将参数视为字
2、符串型 方法三: /改变原操作数的类型 $x=1.5; settype($x,”integer”); /$x=1 参数值:integer double string array object 2).取得操作数类型 $x=1; gettype($x); /integer is_long is_double is_string is_array is_object 2.字符串1).转义字符 n 换行符 r 回车 r 横表 反斜线 $ 货币符号 “ 双引号 2).使用ASCCII码 ACSII码相关函数函数说明chr(n)返回ASCII码为n的字符dechex(n)返回等于给定十进制值n的十六进制值
3、decoct(n)返回等于给定十进制n的八进制值hexdec(n)返回等于给定十六进制值n的十进制值octdec(n)返回等于给定八进制值n的十进制值ord(c)返回字符c的ASCII码 例:打印ASCII码为32-127的字符的十进制、八进制、和十六进制值 for($i=32;$i128;$i+) $c=chr($i); $octal=decoct($i); $hex=dechex($i); echo =”$i(octal $octal,hex $hex):$c”; 3).单引号字符串 1.在单引号字符串中,惟一允许的转义序列是 和 2.在输出单引号字符串时,不会执行变量替换 4) prin
4、tf(“the value of n is:%d”,$n); $result=sprintf(“the value of n is: 5).number_format() 格式: number_format(number); number_format(number,decimals); number_format(number,decimals,dec_point,thousands_sep); 参数: number:指定想要格式化的数值 decimals:指定期望的小数位数 thousands_sep:指定用作千位分隔符的字符 默认: 格式化后的结果没有小数 在任何小数位之前插入一个点(。
5、) 用逗号做为千位分隔符 6).处理字符串 1. 获得中字符串的长度 strlen(STRING) 如: $mystr=”xcvfwfwef”; $mylen=strlen($mystr); 2.去掉字符串中的空白字符(空白字符:空格、制表符、换行符等 )chop(s)返回从右边去掉了空白的s的值,与rtrim(s)相同ltrim(s)返回从左边去掉了空白的s的值rtrim(s)返回从右边去掉了空白的s的值,与chop(s)相同trim(s)返回从两端去掉了空白的s的值 3.大小写转换函数 strtoupper()返回全部转换为大写的参数值 strtolower()返回全部转换为小写的参数值
6、4.比较字符串strcasecmp(s1,s2)执行不区分大小写比较,如果s1小于s2,则返回小于0的值,如果s1大于s2,则返回大于0的值,否则返回0strcmp(s1,s2)执行区分大小写比较,如果s1小于s2,则返回小于0的值,如果s1大于s2,则返回大于0的值,否则返回0strncasecmp(s1,s2,n)执行不区分大小写比较,如果s1小于s2,则返回小于0的值,如果s1大于s2,则返回大于0的值,否则返回0,大比较中最多包括n个字符strncmp(s1,s2,n)执行区分大小写比较,如果s1小于s2,则返回小于0的值,如果s1大于s2,则返回大于0的值,否则返回0,大比较中最多包
7、括n个字符 5.查找和提取子串strchr(s1,s2)返回s1中从s2的第一次出现到最后的部分。如果没有发现s2,那么返回fasle,stristr执行相同的操作stristr(s1,s2)如果没有发现s2,那么返回fasle,比较时不考虑大小写strpos(s1,s2)返回s1中s2的第一次出现的整数位置,如果没有发现s2返回falsestrrchr(s1,s2)返回s1中从s2的最后一次出现到最后的部分,如果没有发现s2,返回false,比较中只使用s2的第一个字符strstr(s1,s2)返回s1中从s2的第一次出现到最后的部分,如果没有发现s2,返回false,strchr执行相同的
8、操作substr(s,start)substr(s,start,len)返回s中由一个整数索引start或两个索引start及len指定的部分,字符串的第一个位置是位置0 6.替换子串str_replace(search,replace,subject)搜索subject中的子串search,如果找到子串,使用replace替换第一次出现的search,然后返回subject的值substr_replace(subject,replace,start,len)使用replace替换在start开始、长度为len的子串,然后返回subject的值3.常量 1.PHP预定义常量 _FILE_; /
9、指定当前文件物理路径(包括文件名)_LINE_; /指定当前脚本所在的行数PHP_VERSION; /指定PHP程序的版本PHP_OS; /指定PHP解释器的操作系统名称TRUE; /该常量的值为trueFALSE; /该常量的值为falseE_ERROR; /指到最近的错误处E_WARNING; /指到最近的警告处E_PARSE; /剖析语法有潜在问题的地方E_NOTICE; /发生不正常现象但不一定是错误的地方,如存取一个不存在的变量例:echo _LINE_;echo _FILE_;echo PHP_VERSION;echo PHP_OS; 2.用户定义常量 1).常量的定义define
10、(“CL_PI”,3.14159); 2).常量的引用 echo CL_PI; /无须$ 3).常量的测试 echo defined(“CL_PI”); /如果已经定义了,返回1,否则返回0 4).常量(精确到14位有效数字) echo pi();4.变量 1).PHP变量无需预先声明 2).无需类型定义 3).不允许未赋值就使用 例:$b=1;$a=true; /$a=$b1.声明变量 (1).全局变量:global $mystr (2).静态变量:static $mystr2 /一般用于子程序循环中,使得循环结束,其变量仍然存在 (3).动态变量:如: $name=”cbw”; $name
11、=111; /$cbw=111; $name.”_1”=222; /$cbw_1=222; (4).标量变量 $xx=”xx”2.判断变量是否已配置 isset($mystr); /如果已配置则返回 true3.删除变量 unset($mystr); 5.运算符 1).算术运算符 、*、/、+、- $a=4; $b=2; /* $a+$b=6 $a-$b=2 $a*$b=8 $a/$b=2 $a%$b=0 /取余*/ $a=5; $a+; /$a=6 $a-; /$a=52).赋值运算符 = $a=4; $b=$a; /$b=43).比较运算符 = = 相等= = = 相等且类型相同!= 不等
12、= = 不等或类型不同类的方法或者属性=数组的元素值:三元运算子6.数组 1).数字数组(传统数组:数组项的下标是数组序列) 1.使用赋值语句 例:$x=”cbw”; /$x0=”cbw” $x=”lj”; /$x1=”lj” $x1=”cbw” /$x1=”cbw” $x2=”lj” /$x2=”lj” $x=”q” /$x3=”q” $x10=”cbw” /$x10=”cbw” $x32=”lj” /$x32=”lj” $x=”q” /$x33=”q”2.使用array 创建: $a=array(1,2,3,4); / $a0=1 / $a1=2 / $a2=3 / $a3=4 $x=ar
13、ray(“c”,”b”,”w”); /$x0=”c” $x1=”b” $x2=”w” $x=array(10=”c”,”b”,”w”); /x10=”c” $x11=”b” $x12=”w”2).关联数组(数组项的下标是命名关键字) $x“c”=”cbw” /$x“c”=”cbw” $x“l”=”lj” /$x“l”=”lj” $x“q”=”q” /$x“q”=”q” 2.使用array 创建: $b=array(“name”=”cbw”,”sex”=”男”); /$b“name”=”cbw” /$b“sex”=”男”3).处理数组 .返回数组长度:sizeof($myarray) /返回数组
14、 $myarray 的长度count($x) /返回数组 $x 的元素数量 .遍历数组元素:A. 顺序数组: for($i=1;22;$i+)循环B. 非顺序数组(也可用于顺序数组的遍历):1.while循环 例1:reset ($arr); /将数组的指针指到数组第一个元素/list:列出数组中元素的值 each:返回数组中下一个元素的索引及值while (list(,$value)=each($arr) echo Value:$valuen;等价于:foreach ($arr as $value) ecno value: $value $value)1. foreach($myarray
15、as $key=$string) 循环 或 foreach($myarray as $string)参数: $myarray:目标数组 $key :数组索引变量(自动分配) $string :数组元素值(自动分配) $myarray=array (“name”=”男”,”age”=”22”); foreach($myarray as $temp_str) echo $temp_str; /输出所有元素 输出: cbw男22 2.使用列举函数:current/next()/prev()/key() $myarray=array(namecbw,sex男age22); $mycurrent=cur
16、rent($myarray); echo key($myarray).$mycurrent.”; $mynext=next($myarray);.$mynext.” $myprev=prev($myarray);.$myprev.”cbwsex=男age=22 3.each()函数 $myeach=each($myarray); echo $each0.” echo $each1.” echo $each“key”.” echo $each“value”.”.循环取得数组变量值的键值 $myarray=array (“name”= foreach ($array as $temp_key =$
17、temp_str) echo “$temp_key=$temp_str”; .数组的排序 sort()/asort()/rsort()/Arsort()/ksort()/Krsort() $myarray=array(10=”Perl”,20=”PHP”,21=”Python”); sort($myarray); 0= 1=Perl 2=Python 注:大写字母排在小写字母的前面 排序函数总结操作结果按值对数组排序aort()0=1=2=按值对关联数组排序asort()20=10=21=按值的降序对数组排序arsort()按标识符对数组或关联数组排序ksort()按标识符的降序对数组或关联数
18、组排序krsort()7.函数(用户自定义函数) 1).访问函数外的值 $a=1; function fun_temp($x) $x=$a; /不能访问 $x=$GLOBALS“a”; /可以访问 Global $a; /也可以访问 $a=2;2).参数的默认值 function fun_temp($x=”默认值”) echo $x;3).按值传递 /创建:/调用:$y=0;fun_temp($y);echo &y; 0 4).按引用传递参数 function fun_temp(&$x) 1 或例: /创建: function fun_temp($x) $x=1;fun_temp(&$y);
19、1 5).返回值 1.普通返回值 function square($num) return $num*$num; 引用: echo square(4); 2.返回数组 function small() return myarray(0,1,2); list($zero,$one,$two)=small(); 3返回指针 function &reference() return $some; $newref=&reference(); 6).变量函数 /定义foo()函数functlon foo()/定义bar()函数functlon bar($arg = )In bar();argument was $arg.$func = fo
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1