<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                PHP提供了功能強大的函數,但這遠遠滿足不了需要,程序員可以根據需要自己創建函數。本節就開始學習創建函數的方法。 我們在實際開發過程當中需要有很多功能都需要反復使用到,而這些反復需要使用到的功能,我們能定義成功能(函數),就盡可能定義成功能(函數)。使用的時候,吼一下它的名字即可。 那我們來學一下自定義函數的語法規定,語法規定如下: ~~~ function 函數名([參數名1[=值1], 參數名2[=值2], 參數名n[=值n]]) { 函數中的功能體 [return 返回值] } ~~~ 上面的語法規定中發現了如下特點,產生如下語法規定: 1. 函數以function開始 2. function后面接空格,空格后接函數名 3. 函數名與變量命名規則基本一樣,但是不同的是:函數名不區分大小寫 4. 所謂參數其實就是變量 4. 函數名后接括號,括號內跟參數,參數全都有[](中括號)括起來了,代表參數可填可不填 5. 如果有參數的話,參數后可以接(=)等號,等號接默認值。參數值也是用[](中括號)括起來的,代表選填 6. 函數后的參數變量,主要功能是把函數體外的變量值,傳入函數體內來使用,函數體的變量和函數體外的變量通常是兩個不同的變量。 6. 函數中的具體功能(功能體)用大括號括起來,代表這是一個函數的功能區間 7. 函數可以有返回值也可以沒有返回值,用[](中括號)括起來的,代表選填。 8. return后接空格,空格后接返回值,若有return,return后的代碼均不執行。 9. 函數的執行沒有順序關系,可以在定義處之前的位置調用 10. 函數不能被定義兩次,即函數不能被重載 ####切記:你也要多寫代碼來進行實驗! 我們可以通過實驗來一點一點證明這些觀點。 ####1. 函數是條狗,哪里調用哪里走 ~~~ <?php function liwenkai(){ echo '我是一條狗'; } liwenkai(); liwenkai(); liwenkai(); ?> ~~~ liwenkai這個函數,是不是顯示出來了三段:我是一條狗? ####2. 函數名與變量命名規則一樣,但是不同的是:函數名不區分大小寫 ~~~ <?php function 1demo(){ } ?> ~~~ 以上代碼會報錯。函數命名與變量命名相同。 ####3. 函數名與變量命名規則一樣,但是不同的是:函數名不區分大小寫 ~~~ <?php function Demo(){ echo '如果是寫代碼的男人,我們需要更加承擔來自家庭的責任<br />'; } demo(); Demo(); DEMO(); ?> ~~~ 通過上面的代碼會發現,會顯示出來三行:如果是寫代碼的男我人我們需要更加承擔來自家庭的責任<br />。 也就是函數名在調用的時候不區分大小寫。函數可以反復叫它的名字,可以反復執行。也體現了重用的特點。 ####4. 函數體的參數若是定義了,未傳參數,代碼會報錯 ~~~ <?php //定義函數名為test,必須要傳入一個參數 function test($hello){ } test(); ?> ~~~ 你也自己寫一段出來試試,會不會報錯? ####5. 函數后的參數如果有默認值,參數可以不填,代碼也不會報錯 ~~~ <?php function test( $arg = 10){ echo $arg; } test(); test(88); ?> ~~~ 是不是沒有報錯呀?并且顯示了 10和88出來了。 說明,參數如果傳了,參數會帶入函數中。如果函數沒有傳參數,會用參數后的默認值。 ####6. 函數后的參數可以寫多個 ~~~ <?php function test( $a , $b = 20 , $c = 30){ echo $a + $b + $c; } test( 1 , 2 , 3 ); ?> ~~~ 自己寫寫上面的代碼,我們是不是傳入了多個參數? ####7. 函數后如果有默認值和無默認值的參數,通常把無默認值的參數寫在最前面 之前的第3和第4條實驗我們發現:默認值是代表這個參數可以不用傳值進去。而沒有默認值的話,代碼會報錯,也就是無默認值的參數是必傳的。我們來看看下面的例子: ~~~ <?php function test( $a = 20 , $b = 30 , $c ){ echo $a + $b + $c; } //重點:重點看這一行執行一下 test( , , 8 ); ?> ~~~ 通過上例發現執行上面的代碼又報錯了。也就是上面的語法是不行的。 上面的語法我們希望的是,參數$a和參數$b我們不傳入任何值。參數$c是必須要傳進去的,我們傳了8。可是PHP的語法規定中不準許我們這么寫。因此,我們換一種寫法,也能達到一樣的效果: ~~~ <?php function test( $c , $a = 20 , $b = 30){ echo $a + $b + $c; } //重點:重點看這一行執行一下 test( 8 ); ?> ~~~ 通過上例實驗大家是不是發現,參數$c我傳了,代碼還沒有報錯。而參數$a = 20 ,參數 $b = 30 一樣帶入了代碼 $a + $b + $c 了。 ####8. 函數體的變量與函數體外的變量沒有關系 ~~~ <?php //定義變量$hello的值為10 $hello = 10; //函數后的參數(形式上的參數,參數)處寫上變量名為$hello function demo( $hello ){ //形參帶入了函數體內,函數體內變量$hello 改為了 250 $hello = 250; //輸入2個250相加的結果 echo $hello + $hello; } //將函數體外的變量$hello,傳入變量的參數處(實際傳入的參數,實參),顯示出的結果為500 demo($hello); //此處$hello的值輸出,依然為10 echo $hello; ?> ~~~ 通過上例發現:形參、與實參沒有半點關系。而函數體內的傳進去的形參,再怎么變化,都不會影響實參$hello的實際結果。 ####9. 函數體中若有return,return 后的代碼不執行 ~~~ <?php function demo(){ echo 111; return; echo 222; } demo(); ?> ~~~ 發現沒?——只輸出了111。 ####10. 函數執行完后,return 可把函數體內的值,帶帶函數體外 ~~~ <?php //定義一條函數狗 function liwenkai(){ $foo = 5; $bar = 6; $result = $foo + $bar; //將$result的結果進行返回 return $result; } //調用liwenkai()這個函數,$foo和$bar相加的$result就會返回回來給到變量$piao $piao = liwenkai(); //輸出$piao的結果,果真為11 echo $piao; ?> ~~~ ####11. 函數的執行沒有順序關系,可以在定義處之前的位置調用 ~~~ <?php demo(); function demo(){ $str = '爸爸媽媽年齡越來越大'; $str .= '大多數的孩子都是獨生子女,更加應該負起責任'; echo $str; } demo(); ?> ~~~ 通過上例發現,函數在定義之前還是在定義之后都可以調用。也就是函數可以任意位置調用。 ####11. 函數不能重載 ~~~ <?php function demo(){ } function demo(){ } //試試會報錯嗎? ~~~ 通過上例發現,報錯了,也就是同名函數不能被定義兩次,否則報錯 *** 若您有民族信仰,有傷害您民族信仰的地方,在這里。我向您道歉!上面的一個例子只是為了讓大家理解函數。 作業: 1. 定義一個雙層循環,隔行變色的表格 2. 要求這個表格,默認值為10和10,顏色中有一個為默認參數,一個沒有默認參數 3. 將表格的字符串return 回去
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看