If -else в php - не понимаю как работает. Пример внутри
for ( $ i = 6 ; $ i < 7 ; $ i + +)
$ m e = explode ("::", $file[$i]);
$str6 = $me[7];
$fin = substr("$me[7]", -1);
if ($fin = 2)
{
$str6 = $me[7]/30;
}
else
{
$str6 = $me[7];
}
echo $str6;

Где ошибка, почему в любом случае делит на 30 при любом значении fin?

  • = - операция присваивания, $a=1 означает, что значение $a станет 1. Результат операции присваивания всегда равен правому операнду, т. е.
    if($a=1)echo 'да';
    эквивалентно
    $a=1;
    if(1)echo 'да';
    а поскольку 1 преобразуется к логическому значению true, это эквивлентно
    $a=1;
    echo 'да';

    == - операция сравнения. Оба операнда преобразуются к одному типу и сравниваются.
    1=='1' - истинно

    === - операция сравнения с учетом типов
    1==='1' - ложно
    1===01 - истинно

  • элс иф а не иф элс.