本文目錄一覽:
php有沒有什麼函數可以獲取一個方法中的參數名和參數類型的
/**
* 獲取一個函數的依賴
* @param string|callable $func
* @param array $param 調用方法時所需參數 形參名就是key值
* @return array 返回方法調用所需依賴
*/
function getFucntionParameter($func,$param=[]) {
if(!is_array($param)) {
$param = [$param];
}
$ReflectionFunc = new \ReflectionFunction($func);
$depend = array();
foreach($ReflectionFunc-getParameters() as $value) {
if(isset($param[$value-name])) {
$depend[] = $param[$value-name];
}elseif($value-isDefaultValueAvailable()){
$depend[] = $value-getDefaultValue();
}else{
$tmp = $value-getClass();
if(is_null($tmp)) {
throw new \Exception(“Function parameters can not be getClass {$class}”);
}
$depend[] = $this-get($tmp-getName());
}
}
return $depend;
}
function test($a,$b=20) {
echo $a,’,’,$b;
}
$depend = getFucntionParameter(‘test’,[‘a’=30,’b’=40]);
call_user_func_array(‘test’,$depend); // 30,40
上面的函數是我開發的框架的容器的方法。
php提供了很完整的反射機制。不但可以反射函數,還可以反射方法,反射類構造函數。
有關於PHP中常見數據類型的匯總分享
PHP
數據類型
PHP
支持八種原始類型(type)。
四種標量類型:
string(字符串)
integer(整型)
float(浮點型,也作
double
)
boolean(布爾型)
兩種複合類型:
array(數組)
object(對象)
兩種特殊類型:
resource(資源)
NULL(空)
查看變量類型
通過
gettype()
函數可以方便的查看某個變量的類型:
複製代碼
代碼如下:
?php$var_bool
=
TRUE;
//
a
boolean$var_str
=
“foo”;
//
a
string$var_int
=
12;
//
an
integerecho
gettype($var_bool);
//
輸出
booleanecho
gettype($var_str);
//
輸出
stringecho
gettype($var_int);
//
輸出
integer?
(PS:T不錯的PHP
Q扣峮:276167802,驗證:csl)
提示
由於歷史原因,如果是
float
類型數據,gettype()
函數返回的是
double,而不是
float
。
如果想查看某個表達式的值和類型,請使用用
var_dump()
函數。
判斷變量類型
如果想通過判斷變量類型來確定下一步邏輯動作,不要使用
gettype()
,而使用
is_type
系列函數:
複製代碼
代碼如下:
?php$var_int
=
12;//
如果
$var_int
是
int
類型,這進行加法if
(is_int($var_int))
{
$var_int
=
$var_int+4;}echo
$var_int;
//
輸出
16?
以上是本文關於PHP
數據類型的匯總,希望本文對廣大php開發者有所幫助,感謝您閱讀本文。
php獲取變量類型問題
GET獲取的都是string類型,使用的時候需要轉換成int,由於php算是弱類型的,所以你可以直接操作字符串來進行運算,但這是不安全的。
原創文章,作者:E9NWP,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/127360.html