本文共 7929 字,大约阅读时间需要 26 分钟。
第1页 1、 PHP 基础 1、 在 web 页面中嵌入 php 代码(4 种不同的界定形式) a. b. (不常用) c. <script language=”php”> </script> d. <% %> (从 php6 开始这种 ASP 风格被删了) 2、 添加注释 // # /* */ 3、向浏览器输出数据 a. int print(argument) eg. print(“I love php
”); print “I love php
”; print “I love
php”; b. void echo(string arg1,[string arg2, ...]) c. Boolean printf(string format [,mixed args]) 与 c 语言里的用法是一样的,可以动态输出文本。 d. string sprintf(string format [,mixed arguments]) 这个函数将输出指派到字符串,而不是浏览器。 3、 php 支持的数据类型 a. 标量数据类型。 整型、布尔型(true, false, 0, 非 0)、浮点型、字符串、 b. 符合数据类型 数组、对象、 4、 与类型有关的函数 a.获取类型 string gettype(mixed var) b.转换类型 Boolean settype(mixed var, string type) c.类型标识函数 is_array() is_bool() is_float() 等 is_integer() 即 boolean is_name(mixed var) 5、变量作用域 a.局部变量 b.函数参数 c.全局变量 GLOBAL 进行声明(使用要非常谨慎) d.静态变量 STATIC 进行声明(对于递归函数是非常有用的) 6、php 超级全局变量 7、作用 get 和 post 获取传递的变量 8、获取存储在 cookie 中的信息 9、作用 post 获取关于上传文件的信息($_FILES[][]是一个二维数组) $_FILES[‘file’][‘name’]上传文件的文件名 $_FILES[‘file’][‘type’]上传的 mime 类型,这个变量是否赋值取决于浏览器 $_FILES[‘file’][‘size’]上传文件的大小 $_FILES[‘file’][‘tmp_name’]上传之后,将此文件移动到最终位置之前赋予的临 时名 第2页 $_FILES[‘file’][‘error’]上传状态码,它有五个值 10、heredoc 语法 echo <<I love someone;
EXCERPT; ?> EXCERPT 可以改变,但是必须是相同的,最后一个标识符前面不能有任何字符。 11、控制结构 If else elseif switch 12、循环语句 While do...while for Foreach 这个循环擅长循环处理数组,从数组中提取每个“键/值”对,直到获得所有项,或 满足某些内部条件为止。它有两种语法形式。 a. 从数组中获取每个值,每次迭代都将指针后移 foreach(array_expr as $value) { statement; } Eg. b.处理包含键和键值的数组 foreach(array_expr as $key => $value) { statement; } Eg. 第3页 13、goto,break,continue 语句 14、文件包含语句 a. include() include (‘file’);或 include “file”; 确保文件只包含一次 b. include_once (‘file’); 请求文件 c. require(‘filename’) require 和 include 的区别 确保文件只请求一次 d. require_once(‘filename’) 2、 php 函数 1、 调用函数 2、 创建函数 Function functionName(patameters) { Function_body; } 可以为输入参数指定默认参数值 Function calcSalesTax($price, $tax=0.0675) { $total = $price + ($price * $tax); 第4页 Echo “Total cost:$total”; } calcSalesTax(42.00); 如果在没有提供其它值时,可以作用默认值。 3、 从函数返回值 return; 返回多个值 3、 数组 1、 php 中的数组可以是不同类型的数据集合。 Eg. $states = array(0 =>“banana”, 1 =>”49”, 2 => “true”); 2、 创建包含数组的数组 Eg. 第5页 3、 创建数组 a. 使用 array()创建数组 4、使用 list()提取数组 List()在一次操作中从一个数组内提取多个值,同时为多个变量赋值。 4、 用预定义的值范围填充数组。 Array range(int low, int high[, int step]) Eg. $die = range(0, 6) //Same as specifying $die = array(0, 1, 2, 3, 4, 5, 6) $even = range(0, 8, 2) //Same as specifying $even = array(0, 2, 4, 6, 8) 第6页 $letters = range(“A”, “F”) //Same as specifying $letters = array(“A”, “B”, “C”, “D”, “E”, “F”) 5、 测试数组 boolean is_array(mixed variable) 6、在数组头添加元素 Int array_unshift(array array, mixed variable [, mixed variable...]) 所有已有的数值键都会相应的发生修改,但是关联键不受影响。 $states = array(“Ohio”, “New York”); Array_unshift($states, “California”, “Texas”); //Same as //$states = array(“Ohio”, “New York”, “California”, “Texas”); 6、 在数组尾添加元素 Int array_push(array array, mixed variable [, mixed variable..]) $states = array(“Ohio”, “New York”); Array_unshift($states, “California”, “Texas”); //Same as //$states = array(“California”, “Texas”, “Ohio”, “New York”); 7、 从数组头删除值 Mixed array_shift(array array) $states = array(“Ohio”, “New York”, “California”, “Texas”); $state = array_shift($states); //Same as //$states = array(“New York”, “California”, “Texas”); //$state = “Ohio”; 8、 从数组尾删除值 Mixed array_pop(array array) $states = array(“Ohio”, “New York”, “California”, “Texas”); $state = array_pop($states); //Same as //$states = array(“Ohio”, “New York”, “California”); //$state = “Texas”; 9、 定位数组元素 a. 搜索特定值 Boolean in_array(mixed array, array haystack [, boolean strict]) 第7页 Eg. $state = “Ohio”; $states = array(“Ohio”, “New York”, “California”, “Texas”); If(in_array($states, $state)) { Echo “state in the array of states!”; } //第三个参数可选,在搜索时强制考虑类型 b. 搜索关联数组键 Boolean array_key_exists(mixed key, array array) Eg. c. 搜索关联数组值 mixed array_search(mixed needle, array array, [, boolean strict]) 返回相应的键值 Eg. 获取数组键 10、 Array array_keys(array array [, mixed search_value]) Eg. 第8页 获取数组值 11、 Array array_values(array array) Eg. 12、遍历数组 a.获取当前数组键 mixed key(array array) eg. b.获取当前数组值 mixed current(array array) eg. 第9页 获取当前数组键和值 12、 Array each(array array) 返回的数组包含四个键 0 和 key 包含键名,1 和 value 包含相应的数据 移动数组指针 13、 a. 将指针移动到下一个数组位置 Mixed next(array array) 返回下一个位置的数组值,否则返回 false b. Mixed prev(array array) 将指针移动到前一个数组位置 c. 将指针移动到第一个数组位置 mixed reset(array array) d. 将指针移动到最后一个数组位置 Mixed end(array array) 向函数传递数组值 14、 Boolean array_walk(array &array, callback function, [, mixed userdata]) 确定数组的大小和唯一性 15、 a.确定数组的大小 integet count(array array, [, int mode]) b.统计数组元素出现的频度 array array_count_values(array array) 返回一个包含关联键和值的数组,其中的键为值,值为出现的频度。 c.确定唯一的数组元素 array array_unique(array array) 数组排序 16、 a.逆置数组元素顺序 Array array_reverse(array array, [, boolean preserve_keys]) //可选参数为 true 时,则保持键映射,否则对应原来位置上相应的键 b.转换数组的键和值 array array_flip(array array) 第 10 页 //将键和值进行交换 c.数组排序 void sort(array array, [, int flags]) d.保持键/值对的条件下对数组进行排序 void assort(array array, [, integet sort_flags]) e. 以逆序对数组进行排序 Void rsort(array array, [, integer sort_flags]) f. 保持键值对的条件下以逆序对数组排序 Void arsort(array array, [, integet sort_flags]) g. 数组自然排序 Void natsort(array array) h. 按键值对数组排序 Integer ksort(array array, [, int sort_flags]) 按键值对数组进行逆序排序 i. Integer krsort(array array, [, int sort_flags]) j. 根据用户自定义规则排序 Void usort(array array, callback function_name) 合并,拆分,接合和分解数组 17、 a. 合并数组 Array array_merge(array array1, array array2, ...) b. 递归追加数组 Array array_combine(array keys, array values) Eg. Array array_merge_recursive(array array1, array array2, ...) Eg. c. 连接两个数组 Array array_merge(arrary array1, array array2, ...) d. 拆分数组 array array_slice(array array, int offset, [, int length]) Eg. 第 11 页 e.接合数组 array array_splice(array array, int offset[, int length [, array replacement]]) eg. e. 求 数 组 中 的 交 集 array array_intersect(array array1, array array2, [, arrayN...]) Eg. f. 求 关 联 数 组 的 交 集 array array_intersect_assoc(array array1, array array2[, arrayN...]) Eg. 第 12 页 g.求数组的差集 array_diff(array array1, array array2[, arrayN...]) eg. 与 array_intersect()正好相反 h.求关联数组的差集 array array_diff_assoc(array array1, array array2[, arrayN...]) eg. 其它有用的数组函数 18、 a. 返回一组随机的键 mixed array_rand(array array1[, int num_entries]) Eg. 第 13 页 b.随机洗牌数组元素 void shuffle(array input_array) eg. c.对数组中的值求和 mixed array_sum(array array) eg. d.分解为多维数组 array array_chunk(array array, int size[, boolean preserve_keys]) eg. 第 14 页 数组函数小结 19、 Array() List() Range() is_array() Array_unshift() Array_push() Array_shift() Array_pop() in_array() Array_key_exists() Array_search() Array_keys() Array_values() Key() Current() Each() Next() Prev() Reset() End() Array_walk() 第 15 页 Count() Array_count_values() Array_unique() Array_reverse() Array_flip() Sort() Asort() Rsort() Arsort() Natsort() Ksort() Krsort() Usort() Array_merge() Array_combine() Array_merge_recursive() Array_merge() Array_slice() Array_splice() Array_intersect() Array_intersect_assoc() Array_diff() Array_intersect() Array_rand() Shuffle() Array_sum() Array_chunk() 4、 字符串和正则表达式 1. 正则表达式的语法 a. 中括号 eg:[0-9]匹配 0-9 的十进制数字 b. 量词 Eg. 第 16 页 c. 预定义字符范围。 2、php 正则表达式函数 a.以区分大小写的方式搜索 int ereg(string pattern, string string[, array regs]) b.不区分大小写的方式进行搜索 int eregi(string pattern, string string[, array regs]) c.以区分大小写的方式替换文本 string ereg_replace(string pattern, string replacement, string string) d. 以不区分大小写的方式替换文本 String eregi_replace(string pattern, string replacement, string string) e. 以区分大小写的方式将字符串划分为不同元素。 Array split(string pattern, string string[, int limit]) f. 以不区分大小写的方式将字符串划分为不同元素 Array spliti(string pattern, string string[, int limit]) g. 调节只支持区分大小写的正则表达式 String sql_regcase(string string)上一篇:
下一篇:
转载地址:http://dcmti.baihongyu.com/