我有这段代码正在研究,但看不到某行的目的。
public function insertRecords($table, $data){
//setup some variables for fields and values
$fields = "";
$values = "";
//populate them
foreach($data as $f => $v){
$fields .= "`$f`,";
$values .= (is_numeric($v) && (intval($v) == $v)) ? $v . "," : "'$v',";
}
//remove our trailing ,
$fields = substr($fields, 0, -1);
//remove our trailing ,
$values = substr($values, 0, -1);
$insert = "INSERT INTO $table ({$fields}) values({$values})";
//echo $insert
$this->executeQuery($insert);
return true;
}
我看不到以下目的:
intval($v) == $v))
在三元运算符中。我的理解是,如果 $v 的整数值与 $v 相同,那么做废话。当然,$v 的整数值将等于 $v。它是当前迭代中的当前值。我的理解不正确吗?
我已经知道,如果 intval() 不返回整数,则它默认为三元运算符中的字符串。