8.函数

<?php
/**
 * Created by PhpStorm.
 * User: laotianwy
 * Date: 2021/1/29
 * Time: 16:24
 */
/*
 * 1.函数(注意:函数名不区分大小写,变量名区分大小写。关键字,函数名不区分大小写)
 *      1.函数就是一段代码块
 *      2.函数可以实现模块化编程
 * 2.函数定义
 *      function 函数名(参数1,参数2,...){
 *          //函数体
 *      }
 * 3.通过函数名()调用函数
 *      function show() {
 *             echo '锄禾日当午<br>';
 *      }
 *      //调用
 *      show();       //锄禾日当午
 *      SHOW();       //锄禾日当午  函数名不区分大小写
 *
 * 4.可以通过变量()这样调用
 *      $name = 'func';
 *      function func (){
 *             echo 'func';
 *      }
 *      $name();
 *
 * 5.匿名函数
 *      1.匿名函数就是没有名字的函数
 *      2.$func = function (){  echo '锄禾日当午<br>';}  $func();
 *
 * 6. 参数传递
 *      1.函数的参数有形式参数和实际参数
 *      2.函数内的是形参,但是调用的时候是实际的参数
 *      3.形式参数是定义函数时候的参数,只起形式的作用,没有具体的值
 *      4.实际参数的调用函数时候的参数,有具体的值
 *      5.默认情况下,参数的传递是值传递
 *
 * 7.更改为地址传递,在参数前面加上&符号
 *          $name1 = 10;
 *          function setName1(&$name){
 *              $name = 100;
 *          }
 *          echo $name; // 100
 *
 * 8.参数默认值
 *      1.在定义函数的时候给形参赋值就是参数的默认值
 *      2.默认值必须是值,不能用变量代替
 *      3.默认值可以使用常量
 *      4.有默认值的写在后面,没有默认值的写在前面
 *              function setName($name=1){
 *                  echo $name;
 *              }
 * 9.参数个数不匹配
 *      1.注意:如果参数不匹配将会报错
 *      2.注意:实参多于形参,只取前面对应的值
 *      function fun1($name,$name1){
 *             echo $name;
 *      }
 *      func1('laotian');
 *      fun1(10,20,30); //实参多于形参,只取前面对应的值
 *
 * 10.参数约束
 *      1.定义变长参数
 *      function fun($name,$age,...$hobby) {
 *             echo '姓名:'.$name,'<br>';
 *             echo '年龄:'.$age,'<br>';
 *             print_r($hobby);
 *             echo '<hr>';
 *      }
 *      fun('tom',22);
 *      fun('berry',25,'读书','睡觉');
 *
 *      2.参数类型约束
 *      function fun(string $name,int $age){
 *          echo "姓名:{$name},'<br>'";
 *          echo "年龄:{$age},'<br>'";
 *      }
 *      // 约束name为字符串,age为int类型
 *
 *      3.函数返回值类型约束
 *          1.函数返回值可以约束的类型有:string, int,float,bool,array
 *      function fun($name,$age):int{
 *          return 1;
 *      }
 *      fun('tom',22);
 *
 * 11.return
 *      1.return 终止脚本执行,只能中断当前页面,如果有包含文件,只能中断包含文件
 *      2.return 之后,不会输出3
 *      3.如果要完全终止脚本执行,使用exit();die();
 *      4.引入文件得时候,切记文件夹名字不能带有中文
 *      5.如果引入问价在return下面那么就不会运行引用文件的。
 *      <?php
 *          echo '2';
 *          return ;
 *          echo '3';
 *      ?>
 *
 * 12.函数的返回和终止
 *      1.return 在函数中作用:
 *          1.是终止函数的运行,
 *          2.返回值
 *
 * 13.练习: 计算器
 * <body>
<?php
$num1='';  //$num1的初始值
$num2='';  //$num2的初始值
$op='';       //操作符
$result='';    //结果
if(!empty($_POST)) {
   $num1=$_POST['num1'];
   $num2=$_POST['num2'];
   $op=$_POST['op'];     //操作符
   switch($op){
      case '+':
         $result=$num1+$num2;
         break;
      case '-':
         $result=$num1-$num2;
         break;
      case '*':
         $result=$num1*$num2;
         break;
      case '/':
         $result=$num1/$num2;
         break;
   }
}
?>
<form method="post" action="">
   <input type="text" name="num1" value='<?php echo $num1?>'>
   <select name="op">
      <option value="+" <?php echo $op=='+'?'selected':''?>>+</option>
      <option value="-" <?php echo $op=='-'?'selected':''?>>-</option>
      <option value="*" <?php echo $op=='*'?'selected':''?>>*</option>
      <option value="/" <?php echo $op=='/'?'selected':''?>>/</option>
   </select>
   <input type="text" name="num2" value='<?php echo $num2?>'>
   <input type="submit" name="button" value="=">
   <input type="text" name="result" value='<?php echo $result?>'>
</form>
</body>
 *
 *
 *
 *
 *
 *  练习:
 *      1. 通过for循环将数组中值求和、求平均值
 *      2.数组翻转
 *      3.遍历二维数组
 *      4.循环输出1-100,其中3的倍数输出A,5的倍数输出B,15输出C。
 *      5.打印水仙花数
 *      6.打印100以内的斐波那契数(迭代法)   1 1 2 3 5 8 13 21 ....
 *      7.打印星星
 *      8.生成颜色面板
 *
 *
 *
 * */
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值