第三章总结函数

第三章函数

1、初始函数
函数:封装一段用于完成特定功能的代码。
函数分类:内置函数(系统自带的)、自定义函数。
strtoupper:将字母转换为大写字母
strtolower:将大写字母转换为小写
return:返回值
function:在声明函数是必须使用的关键字
函数名:要符合PHP的标识符,且函数名是唯一的,不区分大小写

函数体:函数定义的主体,专门用于实现特定功能的代码段

匿名函数(又叫闭包函数),是指没有名称的函数。

参数设置:对于函数来说,参数的不同设置,决定了其调用和使用方式。

值传递:传递的是值得副本,函数范围内对值得任意改变,在函数外部会被忽略
引用传递:传递的是值得内在地址,函数范围内对值得任意改变,在函数外部会发生改变。
优缺点:

变量的作用域
在函数中定义的变量称为局部变量
在函数外定义的变量称为全局变量

变量的作用域

局部变量:在函数的内部定义的变量,其作用域是所在函数
全局变量:被定义在所有函数意外的变量,起作用域是整个PHP文件,但在用户自定义函数内部是不可用的。如果希望在用户自定义函数内部使用全局变量,则要使用global关键字声明
静态变量:能够在函数调用结束后仍保留变量值,当再次回到其作用域时,又可以继续使用原来的值。而一般变量在函数调用结束后,其存储的数据值将被清楚,所占的内存空间被释放。使用静态变量时,先要用static来声明变量,把关键字static放在要定义的变量之前。

局部静态变量和局部变量
局部静态变量只初始化一次,常驻内存不会被销毁直到服务关闭

trim():去除字符串收尾处的空白字符(或指定其他字符)
ceil():向上取接近的整数
floor():向下取最接近的整数
fmod():去除法的浮点数余数
fand():生成一个随机的整数

可变函数:可变函数,它的实现是在一个变量前添加一个“$”符号,就变成了另外一个变量。同理,可变函数的实现就是你在一个变量名后添加一对圆括号“()”,让其变成一个函数的形式,然后PHP就寻找与变量值同名的函数,并且尝试执行它。

后调函数:指的就是具有callable类型的函数,一般用作参数的传递。

匿名函数:就是没有函数名称的函数,也称作闭包函数,经常用作回调函数参数的值。对于临时定义的函数,使用匿名函数无需考虑函数命名冲突的问题。

字符串函数:一种比较运算符

第三章总结函数_第1张图片
字符串函数——截取给定路径中的字符串

$url = 'C:\web\apache2.4\htdocs\cat.jpg';
$pos = strrpos($url, '\\');
// 截取文件名称,输出结果:cat.jpg
echo substr($url, $pos + 1);
// 截取文件所在的路径,输出结果:C:\web\apache2.4\htdocs
echo substr($url, 0, $pos);

strrpos()函数用于在KaTeX parse error: Expected 'EOF', got '\”' at position 8: url中获取“\̲”̲最后一次出现的位置pos。
substr()函数的第1个参数表示待截取的字符串,第2个参数表示开始截取的位置,非负数表示从字符串指定位置处截取,从0开始;负数表示从字符串尾部开始。第3个参数表示截取的长度。

substr()函数的第3个参数表示截取的长度,该长度的设置具体有以下4种情况。
省略第3个参数时,将返回从指定位置到字符串结尾的子字符串。
第3个参数为正数,返回的字符串将从指定位置开始,最多包含指定长度的字符,这取决于待截取字符串的长度。
第3个参数为负数,返回的字符串中在结尾处将有个指定长度的字符被省略。
第3个参数为0、false或null,将返回一个空字符串。

字符串函数——替换指定位数的字符

$tel = '18810881888';		 // 随意输入一串数字作为手机号
$len = 4; 			// 需要覆盖的手机号长度
$replace = str_repeat('*', $len); 	// 根据指定长度设置覆盖的字符串
echo substr_replace($tel, $replace, 3, $len);	// 输出结果: 188****1888

str_repeat()函数用于对“*”字符重复 l e n 次 。 s u b s t r r e p l a c e ( ) 函 数 用 于 对 字 符 串 len次。 substr_replace()函数用于对字符串 lensubstrreplace()tel中第3个位置开始后的 l e n 长 度 的 字 符 使 用 len长度的字符使用 len使replace进行替换

字符串函数——过滤字符串中的空白字符
程序开发中,去除字符串中的空白字符有时是必不可少的。例如,去除用户注册邮箱中首尾两端的空白字符。这时可以使用PHP提供的trim()函数,去除字符串中首尾两端的空白字符。

$str = '   These are a few words :) ...   ';
echo '原字符串:' . $str . '
'; echo '去空白后的字符串:' . trim($str);

字符串函数——字符串的比较
字符串的比较:一种比较运算符“”和“=”,另一种函数strcmp()
区别:函数与比较运算符在使用时的区别是,字符串相等时前者的比较结果为0,后者的比较结果为true(非0)。因此读者在使用时需要注意不同方式的返回结果。

if (strcmp('ye_PHP', 'yePHP')) {
    echo 'not the same string';
} else {
    echo 'the same string';
}

strcmp()函数比较两个字符串对应的ASCII码值。
第1个参数的字符串与第2个参数的字符串相等返回0,小于返回小于0的值,大于则返回大于0的值。
因此,可以判断出上述示例的输出结果为“not the same string”。

字符串函数——获取字符串的长度
strlen()函数在获取中文字符时,一个汉字占了3个字符,一个英文字符占1个字符。但是对于网站开发来说,这样计算的方式比较麻烦,也没办法区分用户输入的内容是否是汉字。

PHP提供了mb_strlen()函数,用于准确的获取字符串的长度。在使用mb_strlen()函数前,首先要确保PHP配置文件中开启了“extension=php_mbstring.dll”扩展。

数学函数
为了方便开发人员处理程序中的数学运算,PHP内置了一系列的数学函数,用于获取最大值、最小值、生成随机数等常见的数学运算。
第三章总结函数_第2张图片

第三章总结函数_第3张图片

echo ceil(5.2);	// 输出结果:6
echo floor(7.8);	// 输出结果:7 
echo rand(1, 20);	// 随机输出1到20间的整数

ceil()函数是对浮点数5.2进行向上取整,
floor()函数是对浮点数进行向下取整,
rand()函数的参数表示随机数的范围,第1个参数表示最小值,第2参数表示最大值。

时间日期函数
在使用PHP开发Web应用程序时,经常会涉及日期和时间管理。
例如倒计时、用户登录时间、新闻发布时间、购买商品时下订单的时间等。
为此,PHP提供了内置的日期和时间处理函数,满足开发中的各种需求。
第三章总结函数_第4张图片
Unix时间戳是一种时间的表示方式,它是为了解决编程环境中时间运算的问题。

你可能感兴趣的:(PHP)