PHP->函数

1、require( )和include( )
作用:将一个文件载入PHP脚本并执行
已知有一home.php的文件,下面是载入页眉和页脚后的情况

<?php
    require('header.php');
?>

<!-- page content -->
<p>Welcome to the home of TLA Consulting.
Please take some time to get to know us.</p>
<p>We specialize in serving your business needs
and hope to hear from you soon.</p>
<?php
    require('footer.php');
?>

2、函数的命名
–函数名称只能包含字母、数字和下画线
–函数名不区分大小写,变量名区分

3、函数的原型
当我们描述一个函数的时候,可以参考一个函数的原型,如fopen()函数的原型如下所示:

resource fopen(string filename,string mode [,bool use_include_path [,resource context]])

”resource”告诉我们函数会返回一个资源(即一个打开的文件句柄)
文件名称、打开模式这两个参数为字符串(必选参数)
use_include_path是一个布尔值,而参数context是一个资源

->调用fopen

$name = myfile.txt;
$openmode = 'r';
$fp = fopen($name,$openmode);

以上代码调用了fopen函数,函数的返回值保存在变量$fp中

4、作用域
举一个例子,对于输出结果自己感受

function fn(){
      echo "inside the function ,\$var = '.$var"<br />';
      $var = "contents 2"
      echo "inside the function ,\$var = '.$var"<br />';
  }
  $var = "content 1";
  fn();
  echo "outside the function, \$var = '.$var"<br />

输出结果:

     inside the function,$var = 
     inside the function, $var = content 2
     inside the function, $var = content 1

注:全局变量的关键词global,意味这在函数内部一旦声明了某变量为全局变量,那么在函数调用结束后,该变量的作用域依旧存在

5、参数的引用传递和值传递

function increment($value,$amount = 1){
    $value = $value +$amount;
}

$value = 10;
increment($value);
echo $value;    //返回结果依旧为10,$value的值在函数内部为11,但在这一段代码中变量$value是一个不同的变量,具有全局域,所有值并未发生改变

->值传递:当传递一个参数的时候,一个新的并且包含该传入值得变量被创建,即为原来的那个变量副本。但函数外部原来的变量值不会改变

->引用传递:通过在函数定义的参数名前加上一个地址符(&)来指定参数的引用传递

function increment(&$value,$amount = 1){
    $value = $value + $amount;    
}
$a = 10;
echo $a.'<br />';  //调用之前显示为10
increment($a); 
echo $a.'<br />';  //调用之后显示为11

6、return关键字

->终止函数执行

function larger($x,$y){
    if((!isset($x) || (!isset($y))) {
        echo "This function requires two numbers.";         //内置isset()判断变量是否被创建并被赋值
    return;    //返回为空时,返回函数调用处   
    }

    if($x>=$y){
        echo $x."<br />";
    }else {
        echo $y."<br />"
    }
}

->从函数返回一个值

function larger($x,$y){
    if((!isset($x) || (!isset($y))) {
        return false;
    }

    if($x>=$y){
        return $x;
    }else {
        return $y;
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值