PHP函数

用户自定义函数

除了内置的 PHP系统函数以外,我们可以创建我们自己的函数。
函数是可以在程序中重复使用的语句块。
页面加载时函数不会立即执行。
函数只有在被调用时才会执行。

语法:

function functionName() {
      被执行的代码;
}

函数名能够以字母或下划线开头(而非数字),一般情况下不建议开头使用下划线形式命名。
函数名对大小写不敏感。

  • 递归函数
    什么是递归函数呢?
    递归函数即为自调用函数,在函数体内直接或间接自己调用自己,但需要设置自调用的条件,若满足条件,则调用函数本身,若不满足则终止本函数的自调用,所以递归函数必须要设置条件,否则就是死循环;
function getList(&$i=0) {
    echo $i;
    $i++;
    if ($i < 10) {
        getList($i);
    }
}
  • 魔法函数与魔法常量
    • 魔法函数

__construct() —— 构造方法__construct(),实例化对象时被调用,在所有的方法没有运行之前,先自动运行。
__destruct() —— 析构方法__destruct(),在所有的方法都运行完以后,再自动运行。
__call() —— 对象调用某个方法, 若方法存在,则直接调用; 若不存在,则会去调用__call()函数。
__get() —— 读取一个对象的属性时, 若属性存在,则直接返回属性值; 若不存在,则会调用__get函数。
__set() —— 设置一个对象的属性时, 若属性存在,则直接赋值; 若不存在,则会调用__set函数。
__autoload() —— 实例化一个对象时,如果对应的类不存在,则该方法被调用。

  • 魔法常量

__LINE__ —— 返回文件中的当前行号。
__FILE__ —— 返回文件的完整路径和文件名。如果用在包含文件中,则返回包含文件名。自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径,而在此之前的版本有时会包含一个相对路径。
__FUNCTION__ —— 返回函数名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。
__CLASS__ —— 返回类的名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该类被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。
__METHOD__ 返回类的方法名(PHP 5.0.0 新加)。返回该方法被定义时的名字(区分大小写)。

  • 常用函数
    • 字符串处理函数

trim,ltrim,rtrim
addslashes,stripslashes
quotemeta,stripcslashes
substr,mb_substr,strstr
str_replace,str_ireplace
str_repeat
strlen,mb_strlen
strtoupper,strtolower
ucfirst,ucwords
htmlspecialchars,htmlspecialchars_decode
strpos,stripos
date_default_timezone_set('PRC')
urlencode,urldecode
chr,ord
rand
md5
nl2br
json_encode,json_decode
serialize,unserialize
str_pad
base64_encode,base64_decode
strrev
explode,implode

  • 数字处理函数

ceil
floor
round
strval,intval,floatval
number_format

  • 正则表达式函数

preg_match:字符串比对解析
preg_match_all:字符串整体比对解析
preg_replace:字符串比对解析并取代
preg_split:将字符串依指定的规则切开

  • 判断处理函数

isset
unset
empty
is_bool
is_int
is_string
is_array
in_array
is_object
is_float
is_dir
is_file

  • 数组处理函数

count
array_diff
array_push
array_unique
array_merge
array_filter
shuffle
array_key_exists
current
next
prev
end
reset
array_rand
array_chunk
list
sort

  • 时间处理函数

microtime
time
date
strtotime
mktime

  • 文件处理函数

basename — 返回路径中的文件名部分
chmod — 改变文件模式
chown — 改变文件的所有者
copy — 拷贝文件
dirname — 返回路径中的目录部分
disk_free_space — 返回目录中的可用空间
disk_total_space — 返回一个目录的磁盘总大小
fclose — 关闭一个已打开的文件指针
fflush — 将缓冲内容输出到文件
fgets — 从文件指针中读取一行
fgetss — 从文件指针中读取一行并过滤掉 HTML 标记
file_exists — 检查文件或目录是否存在
file_get_contents — 将整个文件读入一个字符串
file_put_contents — 将一个字符串写入文件
file — 把整个文件读入一个数组中
fileatime — 取得文件的上次访问时间
filectime — 取得文件的 inode 修改时间
filemtime — 取得文件修改时间
fileowner — 取得文件的所有者
fileperms — 取得文件的权限
filesize — 取得文件大小
filetype — 取得文件类型
fopen — 打开文件或者 URL
fread — 读取文件(可安全用于二进制文件)
fwrite — 写入文件(可安全用于二进制文件
is_dir — 判断给定文件名是否是一个目录
is_executable — 判断给定文件名是否可执行
is_file — 判断给定文件名是否为一个正常的文件
is_link — 判断给定文件名是否为一个符号连接
is_readable — 判断给定文件名是否可读
is_uploaded_file — 判断文件是否是通过 HTTP POST 上传的
is_writable — 判断给定的文件名是否可写
mkdir — 新建目录
move_uploaded_file — 将上传的文件移动到新位置
pathinfo — 返回文件路径的信息
readfile — 输出一个文件
realpath — 返回规范化的绝对路径名
rename — 重命名一个文件或目录
rmdir — 删除目录
stat — 给出文件的信息
tempnam — 建立一个具有唯一文件名的文件
tmpfile — 建立一个临时文件
touch — 设定文件的访问和修改时间
unlink — 删除文件

  • 清除数组中的空值元素
$array = array_filter($where,create_function('$v','return !empty($v);'));

任务

运用数组函数对多维数组的值进行排序。例:学生考试成绩,按照分数进行排名
运用文件函数遍历循环出所有文件夹下的子文件

你可能感兴趣的:(PHP函数)