1.自定义函数
①PHP函数的定义方式:
function 函数名(参数){
函数体
}
1.使用关键字“function”开始
2.函数名可以是字母或下划线开头
3.在大括号中编写函数体
②PHP函数的调用方法:
函数名+参数 //例如:name();
2.返回值
使用return关键字可以使函数返回值,可以返回包括数组和对象的任意类型,如果省略了 return,则默认返回值为 NULL。
函数不能返回多个值,但可以通过返回一个数组来得到类似的效果。例如:
function numbers() {
return array(1, 2, 3);
}
list ($one, $two, $three) = numbers();
3.可变函数
可变函数:通过变量的值来调用函数,因为变量的值是可变的,所以可以通过改变一个变量的值来实现调用不同的函数。经常会用在回调函数、函数列表,或者根据动态参数来调用不同的函数。可变函数的调用方法为变量名加括号。
function name() {
echo 'jobs';
}
$func = 'name';
$func(); //调用可变函数
可变函数也可以用在对象的方法调用上:
class book {
function getName() {
return 'bookname';
}
}
$func = 'getName';
$book = new book();
$book->$func();
4.内置函数
内置函数: PHP默认支持的函数,PHP内置了很多标准的常用的处理函数,包括字符串处理、数组函数、文件处理、session与cookie处理等。
拿字符串处理函数来举例,通过内置函数str_replace可以实现字符串的替换。
$str = 'i am jobs.';
$str = str_replace('jobs', 'steven jobs', $str);
echo $str; //结果为“i am steven jobs”
另外一些函数是通过其他扩展来支持的,比如mysql数据库处理函数,GD图像处理函数,邮件处理函数等,PHP默认加载了一些常用的扩展库,我们可以安装或者加载其他扩展库来增加PHP的处理函数。
5.判断函数是否存在
当我们创建了自定义函数,并且了解了可变函数的用法,为了确保程序调用的函数是存在的,经常会判断一下函数是否存在。
- function_exists:判断函数是否存在
- method_exists:判断类的方法是否存在
- class_exists:判断类是否定义
- file_exists:判断文件是否存在
<?php
function func() {
echo 'exists';
}
$name = 'func';
if (function_exists($name)) { //判断函数是否存在
$name();
}
Out:
exists
class MyClass{
}
// 使用前检查类是否存在
if (class_exists('MyClass')) {
$myclass = new MyClass();
}
$filename = 'test.txt';
if (!file_exists($filename)) { //判断文件是否存在
echo $filename . ' not exists.';
}