PHP教程10-函数

一.函数的定义与调用

1.概念

函数定义

function 函数名(形参变量){
  语句;
}

函数调用

函数名(实参变量);

2.苹果买卖的规律

某一家水果店苹果卖5元一斤,有一个人想在第一天买1斤,后面连续几天,每一天都会多买2斤,请问第四天,那个人花了多少钱?

第一天:5 * 1=5
第二天:5 * 3=15
第三天:5 * 5=25
第四天:5 * 7=35

<meta charset="UTF-8">
<?php
     function totalPrice($x){   //函数的驼峰命名法
         $price=5*($x*2-1);
         echo $price;
     }
     totalPrice(4);  
?>

二.值传递

1.概念

值传递:把实参的值传给形参。

传递顺序:依次传递。

注意事项:形参是没有具体的值,实参是有具体的值。

2.数字传递

<meta charset="UTF-8">
<?php
     function move($two,$four,$six){   
          echo("two= $two <br/>");
          echo("four= $four <br/>");
          echo("six= $six <br/>");
          echo("开始排队: $two,$four,$six <br/>");
          $sum=$two+$four+$six;
          echo("我是相加数$sum ");
     }
     move(2,4,6);   
?>

运行效果
在这里插入图片描述

三.引用传递

引用符号:&

引用传递:对数据进行一个重复地使用。

<meta charset="UTF-8">
<?php
    //引用传递
    function test(){
        $word="blue";
        $book=&$word;  //book变量对word变量进行了引用
        echo("$book 是蓝色");  //因此book变量就可以对它的值进行使用
    }
    test();
?>

输出样例:blue 是蓝色

四.默认参数传递

默认参数传递:在调用函数的时候,没有进行值传递。在形参的环境中,自己进行了一个赋值操作,例如将保密赋值给hobby。

<meta charset="UTF-8">
<?php
    function test($name,$hobby="保密"){
        echo("名字: $name");
        echo ("<br/>");
        echo("兴趣: $hobby");
    }
    test("诸葛亮");
?>

输出样例:
名字: 诸葛亮
兴趣: 保密

五.函数返回值

返回语句:return…


两数之和

<meta charset="UTF-8">
<?php
    function test($x,$y){
        return $x+$y;
    }
    echo(test(11,22));
?>

输出样例:33

六.函数变量的作用域

全局作用域:函数体外,外面有全局变量。

局部作用域:函数体内,里面有局部变量。

<meta charset="UTF-8">
<?php
    $x="我是全局变量";  
    function test($y){
       //$y="我是局部变量"; 
       echo $y;
    }
    test($x);
?>

输出样例:我是全局变量


总结

$y="我是局部变量";没被注释掉的话,那么输出样例就会变为我是局部变量
原因是局部环境中有数据的话,就会优先使用,如果没有,那么就要看局部环境中有没有数据。

采用的思想:就近原则。

七.字符串

1.trim函数

去除字符串的头部和尾部的空格。

<meta charset="UTF-8">
<?php
    echo "去除空格前的结果--->";
    $x=" 程序设计 ";
    echo "($x)";
    $y=trim($x);
    echo "<br/>";
    echo "去除空格后的结果--->($y)";
?>

输出样例:
去除空格 的结果—>( 程序设计 )
去除空格 的结果—>(程序设计)

2.strlen函数

<meta charset="UTF-8">
<?php
    $a="abcd";
    $b=strlen($a);
    echo $b;   //结果为4
?>

3.substr函数

写法:substr(截取的字符串,开始的位置,截取的长度)

<meta charset="UTF-8">
<?php
    $row="12345678";
    function getStr($string){
        $str=substr($string,0,4);
        echo $str;  //1234
    }
    getStr($row);   
?>

4.str_replace函数

写法:str_replace(替换的目标值,替换的值,原来的字符串)

<meta charset="UTF-8">
<?php
    $num="12345678";
    $x=str_replace('1234',"****",$num);
    echo "这一串数为: ".$x;
?>

输出样例:这一串数为: ****5678

5.分割字符串和拼接字符串

分割字符串的写法:explode(字符串的分割符,分割的字符串,分割字符串的个数)

拼接字符串的写法:implode(拼接的连接符,待拼接的数组)

<meta charset="UTF-8">
<?php
    $str="修复bug";
    //分割字符串
    $str1=explode('复',$str,3);

    echo "<pre>";   //可以定义预格式化的文本,文本也会呈现为等宽字体。

    //拼接字符串
    $str2=implode('-',$str1);
    echo "拼接后的字符串为:".$str2;
?>

在这里插入图片描述

总结:以 “复” 为分隔符,分成 “修” 和 “bug” 两部分,接着,再用 “-” 连接,组成新的字符串。

八.递归实战(玩转数字)

<meta charset="UTF-8">
<?php
    function f($x){
        $x++;
        if($x==3){ //当x为3的时候,没有返回结果
            return false;  
        }
        else{
            return f($x)+1;  
        }
    }
    echo f(0);  //所以,最后的结果为2
?>

篇章

上一篇:PHP教程9-流程结构

下一篇:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值