Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1906341
  • 博文数量: 217
  • 博客积分: 4362
  • 博客等级: 上校
  • 技术积分: 4180
  • 用 户 组: 普通用户
  • 注册时间: 2009-09-20 09:31
文章分类

全部博文(217)

文章存档

2017年(1)

2015年(2)

2014年(2)

2013年(6)

2012年(42)

2011年(119)

2010年(28)

2009年(17)

分类:

2010-03-05 18:52:50

                                     第1页
1、 PHP 基础
1、 在 web 页面中嵌入 php 代码(4 种不同的界定形式)
    a.
    b. (不常用)
    c.
    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)

阅读(1793) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~