2015-07-12 2 views
1

Я пытаюсь присвоить $datestring к ДНЮ в НЕДЕЛЬ - например. воскресенье, понедельник и т.д., так как значение %w является числовым - это означает, 1 понедельник, 2 Вт и т.д.проблем дат в codeignitor PHP

Это проект codeignitor и мой код работает первый условный оператор, является ли это правдой или ложный! Пожалуйста помоги.

 public function data() 
{ 

$datestring = "%w"; 
$time = time(); 

echo mdate($datestring, $time); 


if ($datastring = "1") { 

    echo "monday"; 
} 
else if ($datastring = "2") { 

    echo "tuesday"; 
} 
else if ($datastring = "3") { 

    echo "wednesday"; 
}  

else if ($datastring = "4") { 

    echo "thursday"; 
} 

else if ($datastring = "5") { 

    echo "friday"; 
} 
else if ($datastring = "6") { 

    echo "saturday"; 
} 

else if ($datastring = "7") { 

    echo "sunday"; 
} 
return; 
    } 

ответ

0

Для сравнения вам нужна двойная ==, потому что = является присвоенным. И присваивать переменной «1» переменной $ datastring всегда верно, поэтому всегда сначала, если это правда. Измените его на:

if ($datastring == "1") { 

    echo "monday"; 
} 
else if ($datastring == "2") { 

    echo "tuesday"; 
} 
else if ($datastring == "3") { 

    echo "wednesday"; 
}  

else if ($datastring == "4") { 

    echo "thursday"; 
} 

else if ($datastring == "5") { 

    echo "friday"; 
} 
else if ($datastring == "6") { 

    echo "saturday"; 
} 
else if ($datastring == "7") { 

    echo "sunday"; 
} 

Edit: Я также добавил else if заявление на воскресенье. Вы можете использовать простой else на это тоже, потому что никаких других вариантов не осталось (насколько $ datastring может удовлетворяться только цифры 1 до семи.

Чтобы сделать его более чистого Я хотел бы использовать switch как

switch ($datastring) { 

    case 1: 
    $day = "monday"; 
    break; 
    case 2: 
    $day = "tuesday"; 
    break; 
    case 3: 
    $day = "wednesday"; 
    break; 
    case 4: 
    $day = "thursday"; 
    break; 
    case 5: 
    $day = "friday"; 
    break; 
    case 6: 
    $day = "saturday"; 
    break; 
    case 7: 
    $day = "sunday"; 
    break; 
    default: 
    $day = "unknown day"; 
    break;  
} 

echo $day; 
+0

Спасибо. Переключатель работал идеально. Я никогда не был уверен, когда использовать переключатель в программировании. Ну, теперь я знаю один способ. –

+1

Ваш прием. Если бы это было полезно для вас, пожалуйста, проголосуйте за него и примите его, чтобы показать сообщество, что оно помогает вы со своей проблемой. – bish

+0

Я могу только проголосовать за это, когда ive зарабатывает 15 репутации, говорит он. –

Смежные вопросы