PHP学习之路——函数

函数

1、自定义函数:PHP内置了超多1000个函数,因此函数使得PHP成为一门非常强大的语言。大多数时候我们使用系统的内置函数就可以满足需求,但是自定义函数通过将一组代码封装起来,使代码进行复用,程序结构与逻辑更加清晰。PHP函数的定义方式:

(1)、使用关键字“function”开始

(2)、函数名可以是字母或者下划线开头:function name()

(3)、在大括号中编写函数体:

function name()

{

echo ‘Eric‘;

}

通过以上方式,我们就定义了一个简单的函数,当我们需要的时候,就可以在代码中调用这个函数,调用方法为函数名+参数,例:name();

例:                                                                      输出:

<?php

function say()                                                             =>

{                                                                                        hellow world

echo ‘hellow world‘;

}

say();

?>

2、函数的参数:PHP的函数可以没有参数,也可以有若干个参数,多个参数称之为参数列表,采用逗号分割,参数类是于一个变量,调用时来传递数据到函数体中。通过参数传递可以使函数实现对参数的运算,得到我们想要的结果参数的变量名可以自由指定,但是最好能够表达相关的意思,常用的设定参数的方法为:

例:                                                                        输出:

<?php

function sum($a, $b)                                                   =>

{                                                                                        3

echo $a + $b;

}

sum(1, 2);

?>

3、返回值:使用return关键字可以使函数返回值,可以返回包括数组和对象的任意类型,如果略了return,则默认返回值为NULL。

function add($a)

{

return $a +1;

$b = add(1);

返回语句会立即中止函数的运行,并且将控制权交回调用该函数的代码行,因此下面函数的返回值跟上面的函数是一样的。

function add($a)

{

return $a +1;

$a = 10;

return $a + 20;

$b = add(1);

函数不能返回多个值,但是可以通过返回一个数组来得到类似的效果。

function numbers()

{

return array(1, 2, 3);

list($one, $two, $three) = number();

例:                                                                                      输出:

<?php                                                                                         
=>

function sum($a, $b)                                                            
  样例 1: 3

{                                                                                              样例 2:1 2 3 4

return $a + $b;

}

echo  ‘样例 1:‘ . $c = sum(1, 2);

echo ‘<br />‘;

function numbers()

{

rerurn array(1, 2, 3, 4);

}

$arr = numbers();

echo  ‘样例 2:‘;

for($index  = 0; $index < sizeof($arr); $index++)

{

if( $index <sizeof($arr) - 1)

echo $arr[$index] . ‘  ‘;

else

echo $arr[$index];

}

?>

4、可变函数:所谓可变函数,即通过变量的值来调整函数,因为变量的值是可变的,所以通过改变一个变量的值来实现调用不同的函数。经常会用在回调函数、函数列表、或者根据动态参数调用不同的函数,可变函数的调用方法为变量名加括号。

例:

function name()

{

echo ‘jobs‘;

}

$func = ‘name‘;

$func();//调用可变函数

可变函数也可以用在对象的方法调用上

class book

{

function getName()

{

return ‘bookname‘;

}

}

$func = ‘getName‘;

$book = new book();

$book->$func();

例:                                                                                 输出:

<?php                                                                                    =>

function func()                                                                          样例 1:my function called

{                                                                                                样例 2:boolname

echo ‘样例 1:‘ . ‘my function called.‘;

}

$name = ‘func‘;//调用可变函数

$name();

echo ‘<br />‘;

class book

{

function getName()

{

return ‘boolname‘;

}

}

$func = ‘getName‘;

$book = new book();

echo ‘样例 2:‘ . $book->$func();

?>

5、内置函数:内置函数指的是PHP默认支持的函数,PHP内置了很多标准的常用的处理函数,包括字符串处理、数组函数、文件处理、session与cookie处理等。

例:                                                                  输出:

<?php                                                                  =>

$str = ‘苹果很好吃。‘;                                              香蕉很好吃

//请将变量$str中的苹果替换成香蕉

$str = str_replace(‘苹果‘, ‘香蕉‘, $str);

echo $str;

?>

6、判断函数是否可见:当我们创建了自定义函数,并且了解了可变函数的用法,为了确保程序调用的函数是存在的,经常会先使用function_exists判断一下函数是否存在。同样的method_exists可以用来检测类的方法是否存在。file_exists可以用来检查文件是否存在。

例:                                                                                             输出:

<?php                                                                                             =>

function func() {                                                                                   函数func()存在!

echo ‘函数func()存在!‘ . ‘<br />‘;                                               MyClass类存在 !

}                                                                                                          名为:test.txt的文件不存在!

$name = ‘func‘;

if (function_exists(‘func‘) ) { //判断函数是否存在

$name();

}

class Myclass

{

function fun()

{

echo ‘Myclass类存在!‘ . ‘<br ?>‘.;

}

}

if(class_exists(‘myclass‘))

{

$Fun = ‘fun‘;

$Myclass = new MyClass();

$Myclass->$Fun();

}

$filename  = ‘test.txt‘;

if(!file_exists($filename))

{

echo ‘名为:test.txt的文件不存在!‘;

}?>

时间: 2024-10-21 12:09:40

PHP学习之路——函数的相关文章

Python学习之路-函数

函数 定义,将一组代码用一个名字(函数名)封装起来,想执行这组代码时,直接调用函数名 特性,减少重复代码,使程序变得可扩展,使程序变得易维护. def hello()#def关键字,后面接函数名     print("Hello Python!") #此处使用的是Python3.x的语法 def add(x,y)#x,y是函数的参数(此处为形参)     '''     注释,描述该函数的功能     '''     res = x+y     return res  #返回值(可以没

python学习之路----- 函数参数的实践应用

#以下函数允许计算两个数的乘积,请稍加改造,变成可接收一个或多个数并计算乘积: def product(*args): if len(args) == 0: raise ValueError("请输入至少一个数字") else: a = 1 for i in args: i*=a a = i return i print(product(100,100,100))执行结果: 1000000 Process finished with exit code 0 原文地址:https://w

linux学习之路之函数的使用

什么是函数呢? 函数就是将一些代码封装起来,实现代码重用的功能 函数是不能独立运行的,只有函数调用时才可以执行,而且可以调用多次 使用函数的好处可以避免代码多次重复使用,是程序代码更具有结构性. 那么该如何定义函数呢? 定义函数有二种结构 结构一: function FUNCNAME { COMMAND } 其中function为关键字,FUNCNAME为函数名,COMMAND为函数体内执行的命令 结构二: FUNCNAME() { COMMAND } 其中FUNCNAME为函数名 我们说过函数

IOS学习之路-- 指针&amp;宏函数

如果*p被()包住,说明指针变量p将来指向的是函数 //声明一个指针变量 //int (*p)(int, int) = sum; int (*p)(int, int); p = sum; // 如果*p被()包住,说明指针变量p将来指向的是函数 // 最左边的void说明p指向的函数没有返回值 // 最右边的()说明p指向的函数没有形参 void (*p)(); // 函数名test就是test函数的地址 // 将test函数的地址赋值给了指针变量p // 指针变量p成功指向了test函数 p

Azure云平台学习之路(三)——Cloud Services

1.什么是云服务? 能够部署高度可用的且可无限缩放的应用程序和API.简而言之,就是你写的CMD程序按照一定的框架进行少量修改就能运行在Azure云平台上. 2.Azure云服务有什么特点? (1)专注应用程序而不是硬件,PaaS的一种. (2)支持多种框架和语言. (3)集成了运行状况监视和负载平衡. (4)自动缩放优化成本和性能 3.建立云服务之前,我们需要建立一个云存储,来记录我们的程序的日志信息(当然,这不是必须的) (1)选择左边导航栏的"存储".主面板上显示的是所有已有的存

kafka学习之路(二)——提高

kafka学习之路(二)--提高 消息发送流程 因为Kafka内在就是分布式的,一个Kafka集群通常包括多个代理.为了均衡负载,将话题分成多个分区,每个代理存储一或多个分区.多个生产者和消费者能够同时生产和获取消息.     过程: 1.Producer根据指定的partition方法(round-robin.hash等),将消息发布到指定topic的partition里面 2.kafka集群接收到Producer发过来的消息后,将其持久化到硬盘,并保留消息指定时长(可配置),而不关注消息是否

IOS学习之路- 运行过程

1. 执行Main函数(在main.m文件中) 2. 加载MainStoryborad.storyboard文件 * 创建ViewController文件 * 根据storyboard文件中描述创建ViewController中的UIView(父层) * 创建UIView内部的所有子控件 * 将创建好的所有UIView对象跟ViewController做相应的关联(IBAction,IBoutlet  ) 3. 将程序的第一个控制器内部的UIview显示到手机屏幕上. IOS学习之路- 运行过程

STM32学习之路-LCD(2)&lt;LCD初始化&gt;

这些天一直在研究LCD的初始化函数,因为不过是用IO口模拟时序还是用FSMC来驱动LCD,都必须要弄好LCD的初始化 其实LCD的初始化就是跟着LCD IC的datasheet来写寄存器,大部分都使用上面的默认值,网上有很多修改的例子,这里就不 放出来了.但是我想写下一些比较重要的东西. 这是从网上下载来的一个文件的前半部分: 当然,别的型号的IC也是有这些东西的,不过可能有些地址不同而已. R0,这个命令有两个功能,如果对它写,则最低位为OSC,用于开启和关闭振荡器.而如果对它读操作, 则返回

类与对象的学习之路

---恢复内容开始--- 学习java也有一段时间了,这周踏上了类与对象的学习之路,回过头来总结一下类与对象的基本知识.之前在大一上就接触了Python语言跟C语言,现在开始学习java语言了.我觉得跟之前学的C语言还是有区别的,至于在java书中提及的C++没学习,听别人说C++跟java有点像,这两种编程语言都是面向对象的,并且编程语言本身之间都有很多相似相同的地方. 一.说说类与对象 说到面向对象,那么不得不提的就是类和对象了.Java代码是以类为单位的.在我看来,类就是一个模板,比如一个