여분 필드 값의 일부만 출력하고 싶습니다

여분 필드 값의 일부만 출력하고 싶습니다

QA

여분 필드 값의 일부만 출력하고 싶습니다

본문

wr_1에 "홍_홍길동"이란 값을 다중셀렉터로 넣은후

리스트 및 읽기 화면에서

"홍" 또는 "홍길동"을 구분자"_" 앞이나 뒤쪽의 글을 출력하고 싶은데요

이럴떄 어떻게 처리해야하는지요?

이 질문에 댓글 쓰기 :

답변 4

참고로 더 추가합니다.


$view['wr_1'] = '홍_홍길동';
if ( strpos($view['wr_1'], '_')!==false ) { // _ 문자가 존재하면
    // 아래 둘 중 원하는 한 줄 사용
    list($wr_1) = explode('_', $view['wr_1'], 2); // _ 기준으로 2개로 분리한 앞쪽. 홍
    list(,$wr_1) = explode('_', $view['wr_1'], 2); // _ 기준으로 2개로 분리한 뒤쪽. 홍길동
} else { // _ 문자 없으면
    $wr_1 = $view['wr_1']; // 입력값 있으면 그대로 할당
}
$wr_1 = strlen($wr_1) ? $wr_1 : '미입력'; // 문자열 길이 있으면 값 그대로, 없으면 미입력 할당
echo $wr_1;

위와 같이 사용할때 한번은 문제가 없지만
읽기에서는  list($wr_1) = explode('_', $view['wr_1'], 2);
목록에서는  list(,$wr_1) = explode('_', $view['wr_1'], 2);
사용했더니 두개씩 나오는 문제가 있네요

두개가 나온다는게 아니구요
읽기화면에서 는 wr_1필드 값은 뒤에 값을
리스트에서는 wr_1필드값의 앞부분을 사용하려고하는데요
list($wr_1) = explode('_', $view['wr_1'], 2);를 한번만 사용해도 두개가 같이 출력되서 혹시나 싶어 문의드린겁니다

고정된 패턴( _ )이라면 

$strpld =explode('_' , 문자열);

$cnt = count($strpld);

for($i = 0 ; $i < $cnt ; $i++){

echo($strpld[$i] . "<br/>");

}

이런 형식도 사용할 수 있고

 

고정된 문자가 없는 문자열인 경우 , 

substr(문자열, 시작위치, 길이)

이렇게 하시면 될거같아요

 

답변을 작성하시기 전에 로그인 해주세요.
전체 123,125 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT