我有以下的抽象類Types
PHP檢查屬性是否存在 - 總是返回false
abstract class DocumentTypes {
const OPERATIONAL = 1;
}
這涉及到存儲在一個表中的值。該記錄必須有一個類型,這是傳遞下來的。因此,例如,如果有人正在輸入用於OPERATIONAL
部件的東西,那麼這將是輸入到數據庫中的類型。
我有處理這個問題的函數:
function handle($data, $type)
{
if(!property_exists($type, DocumentTypes::class))
{
throw new Exception("Property value must exist");
}
}
現在什麼,我試圖做的是確保傳遞給handle
的特性是抽象類Types
內的財產屬性的OPERATIONAL
但是存在的,當我試圖做到以下幾點:
$data = "asasfasfasfafs";
try {
handle($data, DocumentTypes::OPERATIONAL);
}catch(Exception $e)
{
die($e);
}
我得到以下異常拋出:
第一個參數必須是一個對象或現有的類中
的名字,我怎麼能因此檢查值傳遞,是實際上的Types
類的屬性?
感謝您的支持。但是,我明白你從哪裏來,它總是會通過'1' ..是否有另一個我可以使用的功能? – Phorce