【发布时间】:2018-05-27 22:27:50
【问题描述】:
我有一个程序可以评估 if then 语句并返回 true 或 false
false = 一切正常
true = 仍需要更多信息
这是我的代码
function city_state_zip_requirement($parameters_ar){
//clear requirements if all the address fields are filled and the first and last or company is filled
if (!empty($parameters_ar['Address']) && !empty($parameters_ar['City']) && !empty($parameters_ar['State']) && !empty($parameters_ar['Zip']) && (!empty($paramenters_ar['First'] && !empty($paramenters_ar['Last'])) || !empty($paramenters_ar['Company']))){
return false;
// clear the requirement if the first and last name or company fields are filled and there is no filled field in the address city state or zip column
} elseif ((!empty($parameters_ar['First']) && !empty($parameters_ar['Last']) && empty($paramenters_ar['Address']) && empty($paramenters_ar['City']) && empty($paramenters_ar['State']) && empty($paramenters_ar['Zip'])) || (!empty($parameters_ar['Company']) && empty($paramenters_ar['Address']) && empty($paramenters_ar['City']) && empty($paramenters_ar['State']) && empty($paramenters_ar['Zip']))){
return false;
// clear the requirement if the email address field is filled and the adress fields are either all filled or all empty
} elseif (!empty($parameters_ar['Email_Address']) && empty($parameters_ar['Address']) && empty($parameters_ar['City']) && empty($parameters_ar['State']) && empty($parameters_ar['Zip'])){
return false;
} else {
return true;
}}
所有字段都是从通过 $_POST 发送数据的用户表单中提取的
我想要完成的是,如果用户在名字(名字)和姓氏(姓氏)或公司字段中输入信息,则地址字段必须全部填写或全部为空(即不能只填写状态例子)
在调试时,评估为真(因此返回假)的语句是倒数第二个 该:
} elseif ((!empty($parameters_ar['First']) && !empty($parameters_ar['Last']) && empty($paramenters_ar['Address']) && empty($paramenters_ar['City']) && empty($paramenters_ar['State']) && empty($paramenters_ar['Zip'])) || (!empty($parameters_ar['Company']) && empty($paramenters_ar['Address']) && empty($paramenters_ar['City']) && empty($paramenters_ar['State']) && empty($paramenters_ar['Zip']))){
return false;
当用户在表单中输入数据时,如果只有parameter_ar['First'] 和$parameter_ar['Last'] 或$paramenter_ar['Company'] 被填充,而一个的地址字段已填写
【问题讨论】:
-
你认为“
return”有什么作用? -
在这种情况下给出布尔值 1 或 0,是吗?
-
这意味着你永远不会打到你的
else-- 对于调试设置你的返回到return 'inside if'--return 'inside elseif'等等等等 这将帮助你理解 which返回正在发生..然后由你来弄清楚为什么 -
@Zak 除了在
first和last字段中输入数据时,我正在点击我的 else 语句,在调试时我发现顶部语句中的第二个是罪魁祸首returning false输入first和last以及address字段之一。
标签: php function if-statement post boolean