创建函数
函数使用关键字function来定义,通常由函数名称、参数、函数体和返回值4部分构成。
函数名称:
只能包含数字、字母和下画线,并且不能以数字作为开始。
函数名不区分大小写。
php中不允许函数重名。
参数:
参数的作用是使函数外部能够向函数中传递数值。在函数的参数列表中,可以没有参数,也可以有一个或多个参数。
函数体:
函数体是该函数的执行规则,任何有效的PHP代码都可以出现在函数体中。在函数体中可以调用PHP内置函数或者其他自定义函数。
返回值:
返回值的作用是在函数成功执行后,将执行结果返回给函数外部。函数的返回值可以是任何数据类型,也可以没有返回值。
函数的调用方法
可以直接使用函数名称进行函数的调用,如果函数带有参数,调用时需要传递相应参数。
在调用函数前需要理解函数的功能、参数和返回值的含义。
如果调用一个不存在或存在错误的函数,会得到提示信息。
函数的返回值
在函数成功执行后,可以通过return语句执行结果返回给函数外部。
单一返回值:
使用return语句可以返回并且只能返回一个值,在return语句执行后,整个函数的运行就会终止。
多返回值:
可以通过数组的形式来得到多个返回值,代码如下:
<?php
function nurmber(){
return array(1,2,3);
}
list($ont,$two,$three)=number();
echo"\$ont是".$one."<br>";
echo"\$two是".$two."<br>";
echo"\$three是".$three;
?>
参数
参数的声明方式
参数是一个用逗号作为隔符的表达式列表,如果参数不存在则参数列表为空。
参数的默认值
默认参数必须放在非默认参数的右侧,否则可能会得到与期不同的执行结果。
参数的两种传递方式——值传递和引用传递。
值传递:是参数在调用函数前后不发生改变,传递给函数的只是这个参数的值。
引用传递:如果我们希望在函数内部修改参数值且函数的外部也能同时改变该参数值,可以使用引用传递。引用传递参数的方式为在参数前面添加“&”符号。
函数的作用域
通过参数列表传递给函数的变量,对于函数来说是局部变量,但是传递时带有引用符号(&)的例外。
PHP内置函数
工具函数:主要是指一些在开发过程中经常使用的函数,它们具通用性。
1.die()和exit()两个函数在php中指向的是同一个函数。die()是exit()函数的别名。
语法格式:void exit([string $status])
如果参数是字符串,则该函数会在退出前输出字符串;
如果参数是整数,这个值会被用做退出状态。退出状态的值在0~254之间,状态0用于成功地终止程序。
2.empty()
用于检查变量是否为0值攻其或者空值,如果变量为0值或者空值则返回true,否则返回false.
3.isset()和unset()
isset()函数用于检测是否已经为变量设定值,如果该变量已经设定值则返回true,否则返回false.
unset()函数用于将已经被赋值的变量删除,使该变量成为一个没有被赋值的变量,该函数的返回值永远为true.
4.settype()
用来设置变量类型,如果设置变量类型成功该函数会返回true,否则返回false.
语法格式:settype($asd,"integer")
5.is_bool()
用来检测变量是否为布尔型,如果变量为布尔型会返回true,否则返回false.
数学函数
主要用来进行长整型和浮点型数据的计算,在函数中使用的数据精度不能超过长整型和浮点型这两个范围。
日期函数
1.time()
用来获取当前的时间戳,其中时间戳是指从公元1970年1月1日开始到当前时间的秒数。
公元1970年1月1日也被称为UNIX纪元,使用UNIX纪元保存日期和时间,可以避免产生著名的千年虫问题。在windows操作系统中同样是使用UNIX纪元来保存日期和时间的。
2.mktime()
用来返回一个日期的UNIX时间戳。
mktine()函数与date()函数结合使用对于日期运算和验证是非常有用的,它可以自动校正越界的输入。
语法如下:
int mktime([int $hour [,int $minutte [,int $second [int $month [,int $day [,int $year]]]]]])
hour:用来指定小时
minute:用来指定年份
second:用来指定数字表示的月份
day:用来指定日期
year:用来指定分钟
3.date()和gmdate()
这两个函数都能将时间按照某种格式以字符的形式输出。
daty()函数是按照本地时间输出日期的。
gmdate()函数则是按照格林威治标准时间输出日期的。
语法如下:
sting date(string $format [,int $timestamp])
sting gmdate(string $format [,int $timestamp])
format:指定日期的输出格式
timestamp:指定一个UNIX时间戳,则默认为是本地当前时间的时间戳。
4.getdate()
用于获得时间及日期信息
语法如下:
array getdate([int $timestamp])
参数timestamp用来指定UNIX时间格式中的时间。
如果没有给出时间戳,则默认为是本地当前时间的时间戳。
5.checkdate()
是用来检查日期是否有效。
checkdate($month,$day,$year)
month:指定要检查日期的月份。
day:指定要检查的日期。
year;指定要检查日期的年份。
文件包含
1.include()与include_once()
使用include()函数可以在指定的位置包含一个文件,
当一个文件被包含时,其中所包含的代码和include()函数所在行具有相同的作用域,
也就是说,调用文件在该行处可以用的任何变量在被调用的文件中也都可用。
比如:
有两个文件,一个是“a.php”,另一个是要包含它的“b.php”文件。
a.php
<?php
$A=1;
?>
b.php
<?php
include "a.php";
echo $A;
?>
include_once()函数和include()函数类似,也是用于包含文件,
但和include()函数不同的是,使用include_once函数在包含文件时,
如果该文件中的代码已经被包含了,则不会被再次包含,从而避免出现函数重定义、变量重新赋值等问题
2.require()与require_once()
require()和include()函数除了在错误处理方式上不同,功能上几乎完全一样,当包含文件失败时,
require()函数就会抛出一个致命错误并中止程序的执行,而include()函数则只会抛出警告信息并继续执行程序。
require_once()函数与include_once()函数功能类似。
3.eval()
eval()函数与include()函数比较相似,其中区别在于
eval()函数可以动态执行PHP代码,而include()函数无法完成这样的功能。