채택완료

for문으로 변경하려면 어떻게해야 될까요?

2018-03-09 (금) 17:06:44 4,152

아래 소스를 for문으로 구현하려는데 잘 안되네요.

for문으로 변경하려면 어떻게해야 될까요? 도움 부탁 드립니다ㅜ

if(strpos($wr_3, '사과') !== false) {
     $wr_a = '사과';
if(strpos($wr_3, '딸기') !== false) {
     $wr_b = '딸기';
if(strpos($wr_3, '포도') !== false) {
     $wr_c = '1.5m';
     $wr_3 = "{$wr_a} {$wr_b} {$wr_c}";
}
}
}

|

답변 2개 / 댓글 2개

채택된 답변
+20 포인트

"1.5m"는 오타로 보구요. "포도"라고 쓰려는 걸 잘못 쓰신걸로 판단하고 작성합니다.

for보다 foreach가 더 편리해보이네요.

Copy
$fruits = array("사과", "딸기", "포도");

$str = '';

foreach($fruits as $fruit) {

    if(strpos($wr_3, $fruit) !== false) $str .= $fruit . " ";

}

$wr_3 = $str;

답변에 대한 댓글 2개

베원님 답변 감사 드립니다ㅜ
작동이 아주 잘됩니다.
strpos 에 값이 없다면 원래의 wr_3 값을 출력되도록 어떻게하면 될까요?
도움 부탁 드려요~
$wr_3 = $str; 를

$wr_3 = ($str != '' ? $str : $wr_3);
이렇게 바꿔보세요
Copy
$arr = array("사과", "딸기", "포도");
for ($i = 0; $i < count($arr); $i++) {
    if (strpos($wr_3, $arr[$i]) !== false)
        $wr_3 = $arr[$i] . " ";
}
$wr_3 = trim($wr_3);

답변을 작성하려면 로그인이 필요합니다.