<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>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                **一.參數類型** 1.位置參數 ``` str_contains('FooBar', 'Foo'); ``` 2.命名參數 ``` str_contains(haystack: 'FooBar', needle: 'Foo'); ``` &emsp; **二.命名參數定義** ``` #聲明$中的參數名稱不帶符號將是參數名稱,或函數形參的名字取$后變為實參的命名參數. #格式:name:'user1'或name:$name function show($name,$age){ echo "$name,$age"; } show(name:'user1',age:'123'); ``` &emsp; **三.支持命名參數兼容程度** 1.新函數 ``` function str_contains(string $haystack, string needle): bool {} $b=str_contains(needle:'php8',haystack:'my name is php8',); var_dump($b); ``` 2.自定義函數 ``` function show($name,$age){ echo "$name,$age"; } ``` 3.大部分不向后兼容 ``` echo substr(string:'my name is php8',start:3,length:4); ``` &emsp; **四.傳參順序** ``` #命名參數可不按參數順序傳遞 show(name:$name,age:$age); show(age:$age,name:$name); ``` &emsp; **五.可選參數和默認值** ``` #當函數或方法用默認值聲明參數時,并且如果命名參數調用站點沒有為該參數設置值,則將使用默認值,就像位置參數調用一樣. function show($name,$age=20){ echo "$name,$age"; } show('user1'); show(name:'user1'); ``` &emsp; **六.跳過參數** ``` #如果未在調用站點上明確設置,則命名參數將繼承默認值。這樣就可以跳過函數/方法調用的可選參數,這對于位置參數如果沒有默認值就無法實現。 function show($name,$age=20,$sex='nan'){ echo "$name,$age,$nan"; } show(name:'user1',sex:'nv'); #擴展實例 try{ show(sex:'nv'); }catch(ArgumentCountError){ echo 'sex nv error'; } ``` &emsp; **七.覆蓋參數** ``` #不允許覆蓋之前設置的參數: function show($name,$age){ echo "$name,$age"; } show(name:'user1',age:25,name:'user2'); ``` &emsp; **八.混合命名和位置參數** ``` #可以在同一調用中使用命名參數和位置參數,位置參數必須在命名參數前面。 function show($name,$age){ echo "$name,$age"; } show(name:'user1',25); ``` **九.帶有繼承鏈的命名參數** ``` #PHP的命名參數功能允許重命名參數名稱。 class Person{ public function show($name){ echo $name; } } class User extends Person{ public function show($age){ echo $age; } } $obj=new User(); $obj->show(age:25); ``` &emsp; **十.func_get_arg函數** ``` #注意參數順序 function show($name, $age){ echo func_get_arg(0); } show(age:25,name:'user1'); ``` &emsp; **十一.可變參數的命名參數** ``` #可變參數可以收集未分配給先前參數(如果有)的參數,并且其名稱將被保留。 function show($a, $b, ...$args) { print_r($args); } show(1,2,name:'user1',age:25,sex:'nv'); show(1,2,80,name:'user1',age:25,sex:'nan'); ``` &emsp; ### **系統的學習PHP** 關注:PHP自學中心,回復相應的關鍵詞,領取以下視頻教程 **jwt原理與實戰應用** 公眾號里回復:562378 &emsp; #### **還有其他的教程的關鍵詞,請關注公眾號查看每天分享的文章教程的頭部** ![](https://img.kancloud.cn/96/af/96af322d2cdc53d3fbbe981affa60c7f_150x150.jpg)
                  <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>

                              哎呀哎呀视频在线观看