日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

PHP伪类型和伪变量

發(fā)布時(shí)間:2025/4/16 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PHP伪类型和伪变量 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、偽類型

PHP偽類型有三種,分別是:1,mixed混合類型。2,number數(shù)字類型。3,callback回調(diào)類型。

1,mixed混合類型:

mixed說明一個(gè)參數(shù)可以接受多種不同的類型,但并不是所有的類型。

2,number數(shù)字類型:

number參數(shù)可以接受integer整型和float浮點(diǎn)型。

3,callback回調(diào)類型:

例如call_user_func()函數(shù)就可接收用戶自定義的函數(shù)作為一個(gè)參數(shù),他是php的一個(gè)內(nèi)置函數(shù)。callback函數(shù)不僅可以是一個(gè)函數(shù),也可以是一個(gè)對(duì)象的方法,靜態(tài)類的方法也可以。一個(gè)php函數(shù)用函數(shù)名字符串來傳遞,可以傳遞任何內(nèi)置的或者用戶自定義的函數(shù),除了語(yǔ)言結(jié)構(gòu)例如array(),echo(),empty(),eval(),exit(),isset(),list(),print(),unset()等。

如果要傳入一個(gè)對(duì)象的方法,需要以數(shù)組的形式來傳遞,數(shù)組下標(biāo)0是對(duì)象名,下標(biāo)1是方法名。要是沒有實(shí)例化為對(duì)象的靜態(tài)類,要傳遞其方法,要將數(shù)組0下標(biāo)指明的對(duì)象名換成該類的名稱。

除了普通的用戶定義的函數(shù)外,也可以使用create_function來創(chuàng)建一個(gè)匿名的回調(diào)函數(shù)。

示例::

?

[php]?view plaincopy
  • <?php??
  • ??
  • ????//普通的回調(diào)函數(shù)??
  • ????function?my_callback_function(){??
  • ????????echo?"my?is?callback?function.";??
  • ????}??
  • ??
  • ????//回調(diào)方法??
  • ????class?MyClass{??
  • ????????static?function?myCallbackMethod(){??
  • ????????????echo?"my?is?callback?method.";??
  • ????????}??
  • ????}??
  • ??
  • ????//num1:回調(diào)函數(shù)??
  • ????call_user_func('my_callback_function');??
  • ??
  • ????//num2:靜態(tài)類的方法??
  • ????call_user_func(array('MyClass','myCallbackMethod'));??
  • ??
  • ????//num3:對(duì)象方法??
  • ????$obj?=?new?MyClass();??
  • ????call_user_func(array($obj,'myCallbackMethod'));??
  • ??
  • ????//num4:靜態(tài)類的方法(5.3.0以上)??
  • ????call_user_func('MyClass::myCallbackMethod');??
  • ??
  • ????//num5:相對(duì)靜態(tài)方法調(diào)用??
  • ????class?A?{??
  • ????????public?static?function?who(){??
  • ????????????echo?"A";??
  • ????????}??
  • ????}??
  • ??
  • ????class?B?extends?A?{??
  • ????????public?static?function?who(){??
  • ????????????echo?"B";??
  • ????????}??
  • ????}??
  • ??
  • ????call_user_func(array('B','parent::who'));???//輸出B??
  • ??
  • ????//num6:調(diào)用時(shí)傳入?yún)?shù)??
  • ????function?test($a,$b){??
  • ????????echo?$a;??
  • ????????echo?$b;??
  • ????}??
  • ??
  • ????call_user_function('test','1','2');?//輸出1?2??
  • ??
  • ????//num7:調(diào)用類方法傳入?yún)?shù)??
  • ????class?a(){??
  • ????????function?b($c){??
  • ????????????echo?$c;??
  • ????????}??
  • ????}??
  • ??
  • ????call_user_func(array('a','b'),'1');?//輸出1??
  • ??
  • ????//num8:call_user_func_array與call_user_func很相似,只不過換了一種方式傳遞參數(shù),讓參數(shù)結(jié)構(gòu)更清晰:??
  • ????function?a($b,$c){??
  • ????????echo?$b;??
  • ????????echo?$c;??
  • ????}??
  • ??
  • ????call_user_func_array('a',array('1','2'));???//輸出1?2??
  • ??
  • ????//num9:用call_user_func_array調(diào)用類內(nèi)部方法??
  • ????class?A(){??
  • ????????function?a($b,$c){??
  • ????????????echo?$b;??
  • ????????????echo?$c;??
  • ????????}??
  • ????}??
  • ??????
  • ????call_user_func_array(array('A','a'),array('1','2'));????//輸出1?2??
  • ??
  • ????//num10:call_user_func函數(shù)和call_user_func_array函數(shù)都支持引用,這讓他們和普通的函數(shù)調(diào)用更趨于功能一致:??
  • ????function?a($b){??
  • ????????$b++;??
  • ????}??
  • ????$c=0;??
  • ????call_user_func('a',$c);?//輸出1??
  • ????call_user_func('a',array($c));??//輸出2??
  • [php]?view plaincopy
  • ??

  • 二、偽變量

    ?

    php中的$...為偽變量,表示等等的意思,當(dāng)一個(gè)函數(shù)可以接受任意個(gè)參數(shù)時(shí)使用此變量名。

    轉(zhuǎn)載于:https://www.cnblogs.com/457248499-qq-com/p/7357793.html

    總結(jié)

    以上是生活随笔為你收集整理的PHP伪类型和伪变量的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。