亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > PHP > 正文

淺析PHP中call user func()函數及如何使用call user func調用自定義函數

2024-05-04 23:40:09
字體:
來源:轉載
供稿:網友

使用call_user_func函數,通過傳入字符串函數,可以調用自定義函數,并且支持引用。該函數允許用戶調用直接寫的函數并傳入一定的參數,下面總結下這個函數的使用方法,需要的朋友參考下

UCenter源代碼里有一個函數call_user_func,開始以為是自己定義的函數,結果到處都找不到。后來才知道call_user_func是PHP的內置函數,該函數允許用戶調用直接寫的函數并傳入一定的參數,下面總結下這個函數的使用方法。

call_user_func函數類似于一種特別的調用函數的方法,使用方法如下:

 

 
  1. <?php 
  2. function nowamagic($a,$b)  
  3. {  
  4. echo $a;  
  5. echo $b;  
  6. }  
  7. call_user_func('nowamagic'"","");  
  8. call_user_func('nowamagic'"","");  
  9. //顯示  
  10. ?> 

調用類內部的方法比較奇怪,居然用的是array,不知道開發者是如何考慮的,當然省去了new,也挺有新意的:

 

 
  1. <?php 
  2. class a {  
  3. function b($c)  
  4. {  
  5. echo $c;  
  6. }  
  7. }  
  8. call_user_func(array("a""b"),"");  
  9. //顯示  
  10. ?> 

call_user_func_array函數和call_user_func很相似,只不過是換了一種方式傳遞了參數,讓參數的結構更清晰:
 

  1. <?php 
  2. function a($b, $c)  
  3. {  
  4. echo $b;  
  5. echo $c;  
  6. }  
  7. call_user_func_array('a', array(""""));  
  8. //顯示  
  9. ?> 

call_user_func_array函數也可以調用類內部的方法的:

 

  1. <?php 
  2. Class ClassA  
  3. {  
  4. function bc($b, $c) {  
  5. $bc = $b + $c;  
  6. echo $bc;  
  7. }  
  8. }  
  9. call_user_func_array(array('ClassA','bc'), array(""""));  
  10. //顯示  
  11. ?> 

call_user_func函數和call_user_func_array函數都支持引用,這讓他們和普通的函數調用更趨于功能一致:

 

  1. <?php 
  2. function a($b)  
  3. {  
  4. $b++;  
  5. }  
  6. $c = ;  
  7. call_user_func('a', $c);  
  8. echo $c;//顯示  
  9. call_user_func_array('a', array($c));  
  10. echo $c;//顯示  
  11. ?> 
  12. 另外,call_user_func函數和call_user_func_array函數都支持引用。 
  13. view sourceprint? 
  14. <?php 
  15. function increment(&$var
  16. $var++; 
  17. $a = ; 
  18. call_user_func('increment', $a); 
  19. echo $a; //  
  20. call_user_func_array('increment', array(&$a)); // You can use this instead 
  21. echo $a; //  
  22. ?> 

下面給大家介紹使用call_user_func調用自定義函數

使用call_user_func函數,通過傳入字符串函數,可以調用自定義函數,并且支持引用。

1.mixed call_user_func ( callable $callback [, mixed $parameter [, mixed $... ]] )

調用第一個參數提供的自定義函數,后面的參數為自定義函數的參數,返回自定義函數的結果
 

  1. function say($word) 
  2. echo $word; 
  3. call_user_func('say''hello world'); //hello world 
  4. 當然也可以調用類中的方法: 
  5. class A { 
  6. function say($word = ''
  7. echo $word; 
  8. }  
  9. $a = new A(); //注意,必須是要實例化的,除非是static 
  10. call_user_func(array($a, 'say'), 'hello world'); //hello world 

2.mixed call_user_func_array ( callable $callback , array $param_arr )

話說call_user_func_array和call_user_func函數功能一樣,只是調用參數時有點區別:
 

  1. function a($word) 
  2. echo $word; 
  3. class A { 
  4. function say($word = ''
  5. echo $word; 
  6. call_user_func_array('a', array('hello world')); //hello world 
  7. $a = new A(); //注意,必須是要實例化的,除非是static 
  8. call_user_func_array(array($a, 'say'), array('hello world')); //hello world 

注明:另外類似的兩個函數是call_user_method 和call_user_method_array() 不過在PHP4.1后就停用廢棄了


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲在线视频观看| 免费成人高清视频| 久久久久久久一区二区三区| 国产精品视频网| 国产一区二区欧美日韩| 国产精品免费电影| 欧美高清在线观看| 欧美一区二区视频97| 91欧美日韩一区| 美女精品久久久| 久久精品欧美视频| 性色av一区二区三区| 国产91久久婷婷一区二区| 日韩最新在线视频| 久久精品这里热有精品| 亚洲欧美日韩国产精品| 中文字幕亚洲无线码在线一区| 欧美成人亚洲成人日韩成人| 精品国偷自产在线视频| 成人天堂噜噜噜| 精品国产31久久久久久| 国产欧美久久久久久| 日韩精品黄色网| 色噜噜久久综合伊人一本| 久久久久亚洲精品| 欧美激情啊啊啊| 亚洲精品美女在线| 欧美国产精品va在线观看| 欧美精品xxx| 亚洲视频欧美视频| 亚洲成人动漫在线播放| 欧美极品美女视频网站在线观看免费| 日韩女优人人人人射在线视频| 国产91亚洲精品| 欧美性猛交xxxx免费看久久久| 琪琪第一精品导航| 中文字幕成人在线| 国产精品久久久999| 欧美亚洲另类制服自拍| 精品国偷自产在线视频| 日韩黄色高清视频| 日韩精品免费视频| 亚州av一区二区| 国产精品青青在线观看爽香蕉| 欧美日韩成人免费| 欧美国产极速在线| 久久视频这里只有精品| 国外日韩电影在线观看| 国内精品久久久久久中文字幕| 成人啪啪免费看| 欧美午夜影院在线视频| 日本高清视频精品| 久久免费国产视频| 日韩美女在线观看一区| 国外成人在线直播| 91亚洲va在线va天堂va国| 亚洲第一精品久久忘忧草社区| 欧美大码xxxx| 亚洲成人精品视频在线观看| 日韩激情av在线播放| 亚洲精品一区在线观看香蕉| 亚洲国产精彩中文乱码av| 亚洲成年网站在线观看| 国产亚洲视频在线观看| 91丝袜美腿美女视频网站| 欧美理论电影在线播放| 精品久久久视频| 国产在线不卡精品| 国产噜噜噜噜久久久久久久久| 亚洲天堂av在线免费观看| 日韩中文字幕网| 亚洲欧美制服另类日韩| 久久久国产视频| 国产精品免费电影| 96精品视频在线| 激情成人在线视频| 国产在线视频2019最新视频| 91免费观看网站| 成人免费福利视频| 午夜精品免费视频| 国产噜噜噜噜噜久久久久久久久| 68精品国产免费久久久久久婷婷| 欧美日韩另类字幕中文| 久色乳综合思思在线视频| 性欧美长视频免费观看不卡| 国产精品最新在线观看| 精品综合久久久久久97| 日韩中文字幕在线看| 精品国产鲁一鲁一区二区张丽| 国产精品午夜国产小视频| 久久免费观看视频| 亚洲乱亚洲乱妇无码| 81精品国产乱码久久久久久| 日韩在线精品一区| 亚洲男女性事视频| 欧美日韩一区二区免费视频| 成人免费在线视频网址| 欧美精品成人在线| 亚洲片国产一区一级在线观看| 日韩国产在线看| 全亚洲最色的网站在线观看| 在线性视频日韩欧美| 久久五月情影视| 亚洲成人国产精品| 欧美日韩国产限制| 91在线视频成人| 久久精彩免费视频| 国产亚洲精品久久久优势| 久久噜噜噜精品国产亚洲综合| 亚洲欧美一区二区三区情侣bbw| 久久人人爽亚洲精品天堂| 亚洲码在线观看| 国产精品一二三视频| 欧美在线精品免播放器视频| 亚洲精品成a人在线观看| 精品视频久久久久久久| 久久免费精品日本久久中文字幕| 国产精品丝袜久久久久久不卡| 日韩中文字幕网| 亲爱的老师9免费观看全集电视剧| 中文字幕亚洲二区| 欧美孕妇孕交黑巨大网站| 国产精品2018| 美日韩丰满少妇在线观看| 日韩精品欧美国产精品忘忧草| 51ⅴ精品国产91久久久久久| 国产一区视频在线| 在线观看免费高清视频97| 精品激情国产视频| 欧美成人精品不卡视频在线观看| 国产精品2018| 91禁国产网站| 91精品国产自产在线老师啪| 欧美日韩第一视频| 久久999免费视频| 亚洲男人天天操| 欧美三级欧美成人高清www| 在线日韩日本国产亚洲| 久久69精品久久久久久国产越南| 日韩视频精品在线| 国产精品露脸自拍| 色偷偷888欧美精品久久久| 欧美成人免费全部观看天天性色| 国产成人精品免高潮在线观看| 欧美性感美女h网站在线观看免费| 久久国产精品久久精品| 日本aⅴ大伊香蕉精品视频| 欧美日韩免费区域视频在线观看| 亚洲人成欧美中文字幕| 亚洲综合av影视| 久久久久久久久久国产精品| 91精品国产高清自在线看超| 亚洲欧美综合精品久久成人| 国产成人精品久久久| 亚洲国产精品一区二区三区| 日韩av在线一区| 亚洲精品国产拍免费91在线| 久久伊人精品一区二区三区| 欧美xxxx做受欧美.88| 国产精品∨欧美精品v日韩精品| 国产精品成人一区二区| 色综合久久久888| 国产日韩精品一区二区| 亚洲成人a级网|