если условие совпадает, но еще, если условие не работает, когда я вставляю $ total_salary = 10000 и $ capital_type = NO.
if ($this->request->is('post')) {
$DATA = $this->data;
$employee_salary = $this->Salary->save($DATA);
$total_salary = $employee_salary['Salary']['salary'];
$salary_type = $employee_salary['Salary']['salary_in_ctc'];
echo $total_salary . $salary_type;
if (($total_salary > 15000) && ($salary_type === 'YES')) {
$pf_company = 1500;
$pf_employee = 1500;
$percent = 0.62;
$gross_salary = ($total_salary - $pf_company);
$base_salary = ($percent * $gross_salary);
$HRA = ($base_salary / 2);
$others = ($gross_salary - ($base_salary + $HRA));
$inhand_salary = ($gross_salary - $pf_employee);
} elseif (($total_salary < 15000) && ($salary_type === 'NO')) {
echo'hello';
$pf_company = 1200;
$pf_employee = 1200;
$percent = 0.62;
$gross_salary = ($total_salary - $pf_company);
$base_salary = ($percent * $gross_salary);
$HRA = ($base_salary / 2);
$others = ($gross_salary - ($base_salary + $HRA));
$inhand_salary = ($gross_salary - $pf_employee);
}
попытайтесь совместить условие верхнего регистра, а также проверьте наличие пробела в ваших условиях. strtoupper(trim($salary_type))
Возможная вторая проблема может быть: по мере того, как вы проверяете тип данных также в состоянии $salary_type ==='NO'
а в сообщении, которое вы указали, вы передаете $ pay_type = НЕТ. который, как представляется, не является строковым типом.
Попробуйте удалить один = из условия или передать NO в качестве строки для проверки условия
$total_salary
&$salary_type
?