鍍金池/ 問答/PHP/ 為什么我這樣定義$post[$modelField]判斷時候會報錯?

為什么我這樣定義$post[$modelField]判斷時候會報錯?

我想寫一個編輯和新增的公共方法 然后主鍵鍵名不固定 所以我先查詢出表的鍵值 然后賦值給這個變量鍵名 打印輸出可正常 但一判斷他就報錯

$modelField = Db::getTableInfo($model::getTable(),'pk');
if($post[$modelField]){
    
}
報錯信息:Illegal offset type in isset or empty
回答
編輯回答
淺淺
2017年3月24日 06:29
編輯回答
黑與白

你用的PHP哪個版本?如果開啟了E_ALL,去判斷一個不存在的變量會報錯。所以你需要isset函數(shù)

$modelField = Db::getTableInfo($model::getTable(),'pk');
if(isset($post[$modelField])){

}

2018年9月9日 11:21