php
  • shorthand
  • 2014-01-16 2 views 1 likes 
    1

    "이 변수가 아직 설정되지 않았다면 설정"에 대한 속기 버전이 있습니까?

    예 :

    switch ($Frequency) { 
        case 'Once': 
         doSomethingSpecific(); 
         break; 
        case 'Daily': 
         $Message = 'Event will occur every day at the same time.'; 
        case 'Weekly': 
         if (!isset($Message)) $Message = 'Event will occur every week on the same day of the week, at the same time.'; 
        case 'Monthly': 
         if (!isset($Message)) $Message = 'Event will occur every month on the same day of the week.'; 
         doSomething($Message); 
         break; 
    } 
    
    +0

    '$ var = (! isset ($ var))? 1 : $ var;' –

    +0

    IMHO, 이것은 당신이하고있는 일에 대해 더 명확하게 작성 될 수 있습니다. '$ Frequency == "Once"'doSomethingSpecific()'else 다음에는 메시지를 설정하고 끝에 doSomething()을 호출하는 것이 좋습니다. –

    +0

    @JonathanKuhn - 감사합니다. –

    답변

    6

    네, 그것은 삼항 연산자라고 :

    뿐만 아니라 이것에 대한 속기 버전이의 PHP 5.3부터
    $var = isset($var) ? $var : "Some default"; 
    

    :

    $var = isset($var) ?: "Some default"; 
    

    그리고 다른 버전 PHP 5.3 이상 :

    isset($var) ?: $var = "Some default"; 
    
    관련 문제