博主信息
博文 13
粉丝 0
评论 0
访问量 14021
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
函数
莫名的博客
原创
860人浏览过

定义:我们常常把具有某个功能的代码块,给写到函数里

作用:提高程序的可读性,可扩展性,可重用性

声明一个函数(目前我所知道的所有语言的函数声明都一样):

例:function demo(){} 

声明准则:

函数的名称应该提示出它的功能

函数名称以字母或下划线开头(不能以数字开头)


如何使用别人写好的函数?

函数的使用技巧:

1.查看函数功能描述

2.查看函数的参数

3.查看函数的返回值


php的函数与c,java等强类型语言相比的优势:

1. 因值决定类型,所以函数的参数没有类型限制,这一点使用函数的传参变的非常灵活

例如:一个实现四则运算的函数,php只需要一个函数就能实现,java则要通过四个相同函数重载来实现。

php:

function operation($a,$b,$oper)
{
    switch($oper)
    {
        case '+':
            return $a + $b;
        case '-':
            return $a - $b;
        case '/':
            return $a / $b;
        case '*':
        return $a / $b;
    }    
}

java:

function operation(int a, int b, string oper)
{
    switch(oper)
    {
        case '+':
            return a + b;
        case '-':
            return a - b;
        case '/':
            return a / b;
        case '*':
        return a / b;
    }
}
function operation(float a, float b, string oper)
{
    switch(oper)
    {
            case '+':
        return a + b;
            case '-':
        return a - b;
            case '/':
        return a / b;
            case '*':
        return a / b;
    }
}
function operation(float a, int b, string oper)
{
    switch(oper)
    {
        case '+':
            return a + b;
        case '-':
            return a - b;
        case '/':
            return a / b;
        case '*':
            return a / b;
    }
}
function operation(int a, float b, string oper)
{
    switch(oper)
    {
        case '+':
            return a + b;
        case '-':
            return a - b;
        case '/':
            return a / b;
        case '*':
            return a / b;
    }
}

注意:php如果声明相同的函数就会报错


2.函数参数可变(这一点让php的函数变得异常强大)

2.1)通过指定默认参数可以使实参 < 形参

例:

function demo($a,$b,$oper='+')
{
    return $a $oper $b;
}
demo(1,2);

2.2)通过系统函数func_get_args()返回的数组来获取传入的实参

例:

function demo()
{
    $num = func_get_args();
    $sum = 0;
    for($i = 0;$i < $num; $i ++)
    {
        $sum += $num[$i];
    }
    return $sum;
}
demo(1,2,3);
demo(1,2,3,4,5);


本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学