답변 8개 / 댓글 12개
채택된 답변
+20 포인트
이왕 체크하는거 값이 존재하는지 여부를 먼저 확인해야 오류가 안날겁니다.
isset을 이용해서 변수가 존재하고 문자열인지 판단해서 '홍길동' 또는 '' 로 값을 셋팅하는게
좀더 안정적인 방법입니다.
Copy
$str = (isset($list[$i]['wr_1']&&is_string($list[$i['wr_1'])):"홍길동":"";
echo $str;
답변에 대한 댓글 5개
감사합니다.
구문은 다음과 같습니다.
<td class="td_wr_1">
<?php
if(strtotime($list[$i]['wr_1'] ) - G5_SERVER_TIME > (86400 * 1)){
echo $list[$i]['wr_1'] ;
} else if(strtotime($list[$i]['wr_1'] ) - G5_SERVER_TIME < (86400 * 1)){
echo '마감임박';
} else{
echo $list[$i]['wr_1'] ;
}
?>
</td>
여기에 어떻게 넣어야 하는지요?
구문은 다음과 같습니다.
<td class="td_wr_1">
<?php
if(strtotime($list[$i]['wr_1'] ) - G5_SERVER_TIME > (86400 * 1)){
echo $list[$i]['wr_1'] ;
} else if(strtotime($list[$i]['wr_1'] ) - G5_SERVER_TIME < (86400 * 1)){
echo '마감임박';
} else{
echo $list[$i]['wr_1'] ;
}
?>
</td>
여기에 어떻게 넣어야 하는지요?
@허당빵
답변하다가 누락한게 하나더 있었네요
) 를 빠뜨려서 오류가 났겠네요. 미안합니다.
$str = ( isset($list[$i]['wr_1']) && is_string($list[$i['wr_1']) )?"홍길동":"";
로 다시 해보세요
로직은 if문이 필요없는 3항
$변수 = (비교) ? 참 : 거짓 ;
의 구조이고
비교의 내용은
1. 변수가 존재하는지
&&
2. 문자열인지
참은 "홍길동"
거짓은 "" 공백
참과 거짓 값중에 하나가
변수에 대입
되는 구조입니다.
답변하다가 누락한게 하나더 있었네요
) 를 빠뜨려서 오류가 났겠네요. 미안합니다.
$str = ( isset($list[$i]['wr_1']) && is_string($list[$i['wr_1']) )?"홍길동":"";
로 다시 해보세요
로직은 if문이 필요없는 3항
$변수 = (비교) ? 참 : 거짓 ;
의 구조이고
비교의 내용은
1. 변수가 존재하는지
&&
2. 문자열인지
참은 "홍길동"
거짓은 "" 공백
참과 거짓 값중에 하나가
변수에 대입
되는 구조입니다.
if(!empty($list[$i]['wr_1']) && !is_numeric($list[$i]['wr_1']))
echo "홍길동";
답변에 대한 댓글 4개
감사합니다.
구문은 다음과 같습니다.
<td class="td_wr_1">
<?php
if(strtotime($list[$i]['wr_1'] ) - G5_SERVER_TIME > (86400 * 1)){
echo $list[$i]['wr_1'] ;
} else if(strtotime($list[$i]['wr_1'] ) - G5_SERVER_TIME < (86400 * 1)){
echo '마감임박';
} else if(!empty($list[$i]['wr_1']) && !is_numeric($list[$i]['wr_1']))
echo "채용시";
} else{
echo $list[$i]['wr_1'] ;
}
?>
</td>
글쓰기를 할 때 여분필드 wr_1 에 '채용시'라고 넣은 곳이 '채용시' 라고 출력되기를 바라는데...
그냥 '마감임박'이라고 출력되고 있습니다.
구문은 다음과 같습니다.
<td class="td_wr_1">
<?php
if(strtotime($list[$i]['wr_1'] ) - G5_SERVER_TIME > (86400 * 1)){
echo $list[$i]['wr_1'] ;
} else if(strtotime($list[$i]['wr_1'] ) - G5_SERVER_TIME < (86400 * 1)){
echo '마감임박';
} else if(!empty($list[$i]['wr_1']) && !is_numeric($list[$i]['wr_1']))
echo "채용시";
} else{
echo $list[$i]['wr_1'] ;
}
?>
</td>
글쓰기를 할 때 여분필드 wr_1 에 '채용시'라고 넣은 곳이 '채용시' 라고 출력되기를 바라는데...
그냥 '마감임박'이라고 출력되고 있습니다.
Copy
if(is_string($list[$i]['wr_1'])
echo '홍길동';
is_string() 함수를 사용하면됩니다.
http://php.net/manual/kr/function.is-string.php
if( is_string($list[$i]['wr_1']) == true )
echo '홍길동';
$test = 1234;
if( is_string($test) ) {
echo 'String';
} else {
echo 'String 아님';
}
이렇게 사용이됩니다
true는 if 에서 존재하는 것으로 인식합니다.
답변을 작성하려면 로그인이 필요합니다.