zoukankan      html  css  js  c++  java
  • php函数

    在 PHP 3 中,函数必须在被调用之前定义。而 PHP 4 则不再有这样的 条件。除非函数如以下两个范例中有条件的定义。

    有条件的函数:

    <?php
    $makefoo 
    true;
    /* We can't call foo() from here
       since it doesn't exist yet,
       but we can call bar() */

    bar();

    if (
    $makefoo) {
      function 
    foo ()
      {
        echo 
    "I don't exist until program execution reaches me. ";
      }
    }

    /* Now we can safely call foo()
       since $makefoo evaluated to true */

    if ($makefoofoo();

    function 
    bar()
    {
      echo 
    "I exist immediately upon program start. ";
    }

    ?>

    函数中的函数:

    <?php
    function foo()
    {
      function 
    bar()
      {
        echo 
    "I don't exist until foo() is called. ";
      }
    }

    /* We can't call bar() yet
       since it doesn't exist. */

    foo();

    /* Now we can call bar(),
       foo()'s processesing has
       made it accessable. */

    bar();

    ?>

    函数的参数:php支持按值传递参数(默认)、通过引用传递、默认参数值。向函数传递数组:缺省情况下函数参数通过值传递

    <?php
    function takes_array($input)
    {
        echo 
    "$input[0] + $input[1] = "$input[0]+$input[1];
    }
    ?>

    引用传递函数参数:默认值通常是常量表达式,不是变量,类成员,或者函数调用

    <?php
    function add_some_extra(&$string)
    {
        
    $string .= 'and something extra.';
    }
    $str 'This is a string, ';
    add_some_extra($str);
    echo 
    $str;    // outputs 'This is a string, and something extra.'
    ?>

    默认参数的值

    <?php
    function takes_array($input)
    {
        echo 
    "$input[0] + $input[1] = "$input[0]+$input[1];
    }
    ?>

    输出结果:

    Making a cup of cappuccino.
    Making a cup of espresso

    请注意当使用默认参数时,任何默认参数必须放在任何非默认参数的右侧;否则, 可能函数将不会按照预期的情况工作。考虑下面的代码片断
    <?php
    function makeyogurt ($flavour$type "acidophilus")
    {
        return 
    "Making a bowl of $type $flavour. ";
    }

    echo 
    makeyogurt ("raspberry");   // works as expected
    ?>

    函数返回值:返回一个引用,必须在函数声明和指派返回值给一个变量时都使用引用操作符 & 
    <?php
    function &returns_reference()
    {
        return 
    $someref;
    }

    $newref =& returns_reference();
    ?>

     

  • 相关阅读:
    C语言二维数组
    Foxyproxy 火狐代理插件
    Midas Civil的钢束生成器
    foobar2000 – ELPlaylist
    Foobar2000-CUI 小结
    Foobar2000–panel stack splitter
    Foobar2000 使用说明
    foobar2000-new
    书匠
    图片转文字 ocr 汉王
  • 原文地址:https://www.cnblogs.com/lindsayzhao103011/p/3361712.html
Copyright © 2011-2022 走看看