PHP常见函数

文章目录
  1. 1. 符号
  2. 2. 序列化
  3. 3. 数据库
  4. 4. 数组函数
  5. 5. 字符串操作
  6. 6. MySQL数据库
  7. 7. 魔术变量
  8. 8. 判断是否为数字
符号
  • eval() - 函数把字符串按照 PHP 代码来计算。
  • floor() -舍去取整发,返回不大于value的下一个整数
  • list() - 用于在一次操作中给一组变量赋值。实际上是一种语言结构,不是函数。

    1
    2
    3
    4
    5
    6
    <?php
    $my_array = array("Dog","Cat","Horse");

    list($a, $b, $c) = $my_array;
    echo "I have several animals, a $a, a $b and a $c.";
    ?>
  • getdate() - 返回一个由时间戳组成的关联数组,总共返回11个数组元素。

    1
    Array ( [seconds] => 37 [minutes] => 34 [hours] => 15 [mday] => 19 [wday] => 3 [mon] => 8 [year] => 2015 [yday] => 230 [weekday] => Wednesday [month] => August [0] => 1439969677 )
  • strip_tags(string,allow) 函数剥去字符串中的 HTML、XML 以及 PHP 的标签。

  • mktime — 取得一个日期的 Unix 时间戳,即:时,分,秒,月,日,年。
序列化
  • serialize() - 产生一个可存储的值的表示。
  • unserialize() - 将已序列化的字符串变回 PHP 的值。
    数据库
  • mysql_pconnect() - 函数打开一个到 MySQL 服务器的持久连接。
  • affected_rows() - 返回前一次mysqli操作受影响的记录行数,查询语句是一个结果集,只是查询出内容,并未产生改变。
    数组函数
    1. 数组遍历函数
  • list(); //不是真正的函数,而是PHP的语言结构,用于给一组变量赋值,仅能用于索引数组
  • each(); //返回数组当前元素的键值对,并将指针移动到下一个元素位置
  • while(); //可配合list或each使用:while(list($key, $value) = each($arr)){each $key, $value; }

2. 数组内部指针控制

  • current(); //读取指针位置的内容
  • key(); //读取当前指针指向内容的索引值
  • next(); //将数组中的内部指针指向下一单元
  • prev(); //将数组内部指针倒回一位
  • end(); //将数组内部指针指向最后一个元素
  • reset(); //将目前指针指向第一个索引位置

3. 数组键值操作函数

  • array_values($arr); //获得数组的值
  • array_keys($arr); //获得数组的键名
  • array_flip($arr); //数组中的值与键名互换(如果有重复前面的会被后面的覆盖)
  • array_search(‘PHP’,$arr); //检索给定的值,加true则是严格类型检查
  • array_reverse($arr); //将数组中的元素翻转(前后顺序)
  • in_array(“apple”, $arr); //在数组中检索apple
  • array_key_exists(“apple”, $arr); // 检索给定的键名是否存在数组中
  • array_count_values($arr); // 统计数组中所有值出现的次数
  • array_unique($arr); // 删除数组中重复的值

4. 数组回调函数

  • array_filter(); //使用回调函数过滤数组中的元素,如果回调返回true则当前的元素被包含到返回数组中
  • array_walk(); //回调函数处理数组,自定义函数要有两个参数,本函数第三个参数可以作为回调第三个参数返回
  • array_map(); //可以处理多个数组,每个数组的长度应该相同,传入数组的个数和回调函数参数个数应该一致

5. 数组的分段和填充

  • array_slice($arr, 0, 3); //将数组中的一段取出,此函数忽略键名(数组的分段)
  • array_splice($arr, 0, 3,array(“black”,”maroon”)); //将数组中的一段取出,返回的序列从原数组中删除
  • array_chunk($arr, 3, TRUE); //将一个数组分割成多个,TRUE为保留原数组的键名(分割多个数组)

6. 数组与栈,列队

  • array_push($arr, “apple”, “pear”); //将一个或多个元素压入数组栈的末尾(入栈),返回入栈元素的个数
  • array_pop($arr); // 将数组栈的最后一个元素弹出(出栈)
  • array_shift($arr); //数组中第一个元素移出并返回(长度减1,其他元素向前移动一位,数字键名改为从零计数,文字键名不变)
  • array_unshift($arr,”a”,array(1,2)); //在数组的开头插入一个或多个元素

7. 数组的排序

  • sort($arr); //由小到大,忽略键名
  • rsort($arr); //由大到小,忽略键名
  • asort($arr); //由小到大,保留键名
  • arsort($arr); //由大到小,保留键名
  • ksort($arr); //按照键名正序排序
  • krsort($arr); //按照键名逆序排序

8. 数组的计算

  • array_sum($arr); //对数组内部的所有元素做求和运算(数组元素的求和)
  • array_merge($arr1, $arr2); //合并两个或多个(相同字符串键名,后面覆盖前面,相同的数字键名,后面的附加到后面)
  • array_diff($arr1, $arr2); //返回差集结果数组
  • array_diff_assoc($arr1, $arr2, $arr3); //返回差集结果数组,键名也做比较
  • array_intersect($arr1, $arr2); //返回交集结果数组
  • array_intersect_assoc($arr1, $arr2); //返回交集结果数组,键名也做比较
字符串操作
  • substr() - 返回字符串的一部分。
    substr(string,start,length)
参数 描述
string 必需。规定要返回其中一部分的字符串。
start 必需。规定在字符串的何处开始。正数 - 在字符串的指定位置开始,负数 - 在从字符串结尾开始的指定位置开始,0 - 在字符串中的第一个字符处开始
length 可选。规定被返回字符串的长度。默认是直到字符串的结尾。正数 - 从 start 参数所在的位置返回的长度,负数 - 从字符串末端返回的长度
  • strcmp($str1,$str2) - 比较两个字符串的大小,比较时计算了两个字符串相差(不同)字符的个数一起作为返回。
    0 - 如果两个字符串相等,<0 - 如果 string1 小于 string2,>0 - 如果 string1 大于 string2。

strcasecmp() 同比较字符串,但不区分大小写。

MySQL数据库

mysql_fetch_object返回值是个对象,在速度上和mysql_fetch_array及mysql_fetch_row差不多。

魔术变量

__FILE__ 文件的完整路径和文件名。

判断是否为数字

使用is_numeric();

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$num  = 1; 
$num1 ='1';
$str ='abc';
if( is_numeric( $num ) )
{
echo $num.'是数字型';
}
//1是数字型
if( is_numeric( $num1) )
{
echo $num1.'是数字型';
}
else
{
echo $num1.'不是数字型';
}