2012-01-28 4 views
2

미리 감사드립니다. 나는 비슷한 다른 질문/답변을보고 내가 찾던 것을 정확히 찾지 못했습니다.PHP의 Echo 문에 IF 문을 사용할 수 있습니까

나는 이것을하려고하고 있습니다. 올바른 길을 가고 있습니까?

echo " <div id='tabs-".$match."'> 

    <textarea id='".$match."' name='".$match."'>". 

    if ($COLUMN_NAME === $match) 
     { 
     echo $FIELD_WITH_COLUMN_NAME; 
     } 

    else 
     { 
     } 

    ."</textarea> 

<script type='text/javascript'> 
CKEDITOR.replace('".$match."'); 
</script> 

</div>"; 

나는 브라우저에서 다음과 같은 오류 메시지가 점점 오전 :

구문 분석 오류 : 구문 오류,

이는 IF 중첩에 대해 갈 수있는 올바른 방법이 있으면 알려 주시기 바랍니다 예상치 못한 T_IF 에코 내부의 문장. 고맙습니다.

+0

* 왜 * 당신을 그런 식의 코드를 작성하고 싶습니까? 그것을 변수에 할당 한 다음 에코합니다. 더 나아가 MVC 디자인 패턴을 살펴보십시오. –

답변

2

$val = ""; 
if ($COLUMN_NAME === $match) 
     { 
     $val = $FIELD_WITH_COLUMN_NAME; 
     } 
echo " <div id='tabs-".$match."'> 

    <textarea id='".$match."' name='".$match."'>". $val ."</textarea> 

<script type='text/javascript'> 
CKEDITOR.replace('".$match."'); 
</script> 

</div>"; 
+0

감사합니다! 아주 간단! –

4

아니요. 그러나 삼항 연산자를 사용할 수 있습니다.

$a = 0; 
echo 'Foo ' . ($a == 0 ? 'zero' : 'non-zero') . ' Bar'; 

()에주의하십시오.

3

를 사용하여 PHP 삼항 연산자를 작동, 당신은 그것을 here에 대한 자세한 내용을보실 수 있습니다. 당신은 중첩 할 수 없습니다

echo " <div id='tabs-".$match."'>  
    <textarea id='".$match."' name='".$match."'>". 
    ($COLUMN_NAME==$match ? $FIELD_WITH_COLUMN_NAME : ""). 
    "</textarea>  
     <script type='text/javascript'> 
     CKEDITOR.replace('".$match."'); 
    </script>  
    </div>"; 
1

echo 내부 if.

echo " <div id='tabs-".$match."'> 

    <textarea id='".$match."' name='".$match."'>"; 

    if ($COLUMN_NAME === $match) 
     { 
     echo $FIELD_WITH_COLUMN_NAME; 
     } 

echo "</textarea> 

<script type='text/javascript'> 
CKEDITOR.replace('".$match."'); 
</script> 

</div>"; 

또는 the ternary operator 사용 : 당신은 별도의 문으로 echo을 분할하거나 필요

echo " <div id='tabs-".$match."'> 

    <textarea id='".$match."' name='".$match."'>". 

    (($COLUMN_NAME === $match) ? $FIELD_WITH_COLUMN_NAME : "") 

    ."</textarea> 

<script type='text/javascript'> 
CKEDITOR.replace('".$match."'); 
</script> 

</div>"; 
0

사용 ... . ($COLUMN_NAME === $match) ? $FIELD-WITH_COLUMN_NAME : '' . ...

이 기각은 if 그것의 앞에

관련 문제