我正在努力将一些代码从mysql_移植到mysqli_等效物,但是我偶然发现了一些似乎不是直接转换的东西:
我有以下代码
if($field_flags == false) {
for($j=0; $j<$num_fields; $j++) {
$field_flags[$j] = mysql_field_flags($result, $j);
if(strpos($field_flags[$j], 'not_null') !== false) {
$field_flags[$j] = false;
} else {
$field_flags[$j] = true;
}
}
}
我无法将其移植为新方法&#34; mysqli_fetch_field_direct&#34;似乎并不那么简单。
有人可以帮助我移植上面的代码。基本上,我正在检查该字段是否允许空值。
答案 0 :(得分:0)
函数mysqli_fetch_field_direct
返回object
,其中mysql_field_flags
返回string
。因此,您直接使用strpos
无法奏效。
if($field_flags == false) {
for($j=0; $j<$num_fields; $j++) {
$field_flags[$j] = mysqli_fetch_field_direct($result, $j);
if(strpos($field_flags[$j]->flags, 'NOT_NULL') !== false) {
//Do something here
} else {
//Do something else
}
}
更多信息请点击php.net