我正在尝试在面向对象编程中的选择选项上创建一个 ereg 以进行验证。尽管即使所选选项不是 ereg 的一部分,它也始终返回 true!
在我的课堂上,我有以下内容:
function makeSelect($category, $fieldName){
$a = '<div>'."\n";
$a .= "<select name='$fieldName'>"."\n";
$a .= "<option value='' selected='true' disabled='disabled'>Pick Category</option>\n";
foreach ($category as $value){
$a .= "<option value='$value'>$value</option>"."\n";
}
$a .= "</select>"."\n";
$a .= "</div>"."\n";
return $a;
}
function checkSelect($selectName){
if(ereg('^[Pick]', $selectName)){
$this->messageArray[$selectName] = "<span class='fail'>Please select field</span>";
$this->testArray[$selectName] = false;
}
else {
$this->messageArray[$selectName] = "<span class='ok'>Sweet</span>";
$this->testArray[$selectName] = true;
}
}
在我的主文件中,我将数组设置为
$category = array(
1=>'First Category',
2=>'Second Category',
3=>'Third Category',
4=>'Fourth Category'
);
并将 checkSelect 函数调用为
$oForm->checkSelect('category');