PHP函数的定义

本文详细介绍了PHP函数的定义、特点、声明和使用方法,包括全局变量的处理、echo、print、print_r、var_dump和sprintf等函数的用法,强调了如何在函数中使用全局变量以及各种函数的功能和调用方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、PHP函数
(一)函数定义(函数也称为方法)
1.一个被命名的
2.独立的代码段
3.执行特定的任务
4.给调用它的程序返回值
比如验证登陆、检测用户注册等场合,为了避免代码冗余或者重复劳动,就可以编写一个验证的函数,每次检测时就可以调用这个函数
(二)函数特点
1.减少程序运行的复杂性
2.提高程序的可靠性
3.提高软件的开发效率
4.提高程序的可维护性
5.提高程序的重用性
(三)函数声明和使用
1.函数声明:
(1)function 函数名(参数1,参数2,参数3=默认值…){ 函数体 }
(2)function 函数名(){ 函数体} //没有返回值称为一个过程
(3)function 函数名(参数1,参数2,参数3=默认值…){ 函数体 ;返回值;}
(4)function 函数名(){ 函数体;返回值;}
函数声明时名称既不能跟系统定义的函数重名也不能跟自己之前定义过的函数重名,
函数体:完成某一功能的代码,可以直接输出结果,或者返回结果值,这时需要用return语句
函数必须调用才能执行,可以在声明之前调用,也可以在声明之后调用
2.函数调用
(1)形参:在函数声明时声明的参数(变量),多个参数用逗号隔开
(2)实参:函数调用时传入的值,实参形参是一一对应的,可以是数据也可以是变量
(3)返回值:如果没有返回值则称为过程
(4)通过return语句返回数据 函数执行到return语句就结束执行,在return语句后不要再有任何输出,也可以用return语句去结束函数的执行

<?php
function userinfo($name,$gender,$addr='北京'){
	echo "<br/>用户名为:".$name;
	echo "<br/>性别为:".$gender;
	echo "<br/>地址为:".$addr;
}
userinfo("jack","男","england");
userinfo("Lily","女","湖南");
userinfo("小明","男");
?>
   	
<?php
function getTable($tab_name,$width,$rows,$cols,$color1,$color2){
	echo '<table border="1" width='.$width.'>';
	echo '<h1>'.$tab_name.'</h1>';
	$row = 1;
	while($row<=$rows){
		if($row%2==0){
			echo "<tr style='background-color:".$color1."'>";
		}else{
			echo "<tr style='background-color:".$color2."'>";
		}
		$col = 1;
		while($col<=$cols){
			echo '<td>'.$col.'x'.$row.'='.($col*$row).'</td>';
			$col++;
		}
		echo "</tr>";
		$row++;
	}
	echo "</table>";
}
getTable('乘法表',1000,7,9,'yellow','pink');
?>
(四)PHP的变量的范围
1.局部变量
在函数中声明的变量,只能在自己的函数内部使用
<?php
function demo(){
	$a = 10;
	echo $a;
}
function test(){
	echo $a;
}
demo();
test();
?>

2.全局变量 PHP不能区分函数是声明还是被调用 需要借助global关键字将变量包含到函数中,这样才是全局变量

<?php
$a = 5;
function demo(){
	global $a;
	$a+=10;
	echo $a;
}
function test(){
	global $a;
	$a+=5;
	echo $a;
}
echo $a.'--11111<br/>';
echo demo().'<br/>';

echo $a.'--222222222<br/>';
echo test()."<br/>";

echo $a.'--333333333<br/>';
echo demo()."<br/>";
?>

3.静态变量 统计函数调用次数的类似程序 在一个函数一次调用可以多次共享

<?php
function test(){
	static $a = 1;
	$a++;
	echo $a.'<br/>';
}
test();
test();
test();
test();
?>

# 4.变量函数 如果一个变量后有$var=’hello’; $var(),就将寻找与变量值同名的函数hello()

<?php
function one($a,$b){
	$num = $a + $b;
	return $num;
}
function two($a,$b){
	return $a*$a+$b*$b;
}
function three($a,$b){
	return $a*$a*$a+$b*$b*$b;
}
$var = 'one';
$var = 'two';
$var = 'three';
echo $var(3,2);

(五)函数的使用方法

1.函数功能决定是否使用这个函数
2.函数的参数决定函数怎么调用,知道有几个参数、传什么类型的值、可以传几个
3.函数的返回值决定调用后怎么处理这个函数
3.外部函数
require() 静态包含,一个文件如果出现错误,程序就会停止执行,出现致命错误
include() 动态包含,一个文件出现错误程序也会继续执行,只显示一个错误警告
避免重复包含:require_once() include_once()

PHP系统函数

1.echo()

可以同时输出多个字符串,多个值之间用逗号分隔。
echo是语言结构(language construct),而并不是真正的函数,因此不能作为表达式的一部分使用。
echo函数中,可以同时输出多个字符串,echo的效率相对比较快echo ‘a’,‘b’,‘c’;
如果你非要加上圆括号,注意写成echo (‘a’,‘b’,‘c’);是错误的,应该写成:echo (‘a’),(‘b’),(‘c’);

2.print()

只能同时输出一个字符串,打印一个值(它的参数)有返回值为int值
同样是语言结构

3.print_r()

可以把字符串和数字简单地打印出来,而数组则以括起来的键和值得列表形式显示,并以Array开头。
但print_r()输出布尔值和NULL的结果没有意义,因为都是打印"\n"。因此用var_dump()函数更适合调试。

4.var_dump()

判断一个变量的类型与长度,并输出变量的数值,如果变量有值输的是变量的值并回返数据类型。此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。

5.sprintf 格式化字符串

sprintf(format,arg1,arg2,arg++)

参数 format 是转换的格式,以百分比符号 ("%") 开始到转换字符结束。下面的可能的 format 值:

%% - 返回百分比符号
%b - 二进制数
%c - 依照 ASCII 值的字符
%d - 带符号十进制数
%e - 可续计数法(比如 1.5e+3)
%u - 无符号十进制数
%f - 浮点数(local settings aware)
%F - 浮点数(not local settings aware)
%o - 八进制数
%s - 字符串
%x - 十六进制数(小写字母)
%X - 十六进制数(大写字母)

trim($str[,“a”,STR_PAD_BOTH])// 去除两边/左/右的空白或"a",默认是空白,或自定义字符

strlen($string);成功则返回字符串 $string 的长度

isset(a)//当a)//当a)//a=NULL 或不存在,返回false,反之为true

empty(a)//当a)//当a)//a=NULL/ ‘’/ array() / 0 / ‘0’/不存在 时 返回true,反之为false

strtotime(‘2015-10-10 10:10:10’);//指定时间转换为时间戳
date(“Y-m-d H:i:s”,时间戳)
date_default_timezone_set()(‘PRC’);//设置时区为中国
date.timezone =“PRC”;//PHP.INI
time();//默认获取当前时间,【返回时间戳格式】 s
micritime();//获取当前时间【返回毫秒的时间戳】
mktime(H,i,s,m,d,Y)//指定时间转为时间戳,参数为空的时候作用与time()相同

rand(10,100)//随机取值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值