2011-03-10 6 views
0

입력 된 문자열에 $ alphabet의 문자가 있는지 확인하고 관련 문자 당 관련 이미지가 표시되는지 확인하고 싶습니다. 누군가가 인사를 나눈다면. h.png, e.png, l.png, l.png 및 o.png가 표시됩니다. 완벽하게 작동while 루프 및 if 문 오류 PHP

<?php 
$input = trim($_POST["textarea"]); 

echo $input; 
echo "<br />"; 

if(strcmp($input[0],'a')==0){ 
    echo "<img src='egypt/$input.png'>"; 
    }else{ 
    echo "You did not write a"; 
    } 


?> 

을 : 지금까지 나는 사용자의 입력을 인식하고 그것을 밖으로 반향하고이 코드를 통해 특정 문자와 관련된 이미지 출력을 가지고 있는지 검색을 가지고있다. 그러나 나는 공백을 포함하여 전체 문자열 전체 알파벳 $ 알파벳에 대해 분석하고 다음이 코드 오른쪽 이미지에 문자열의 각 문자와 일치 할 수 있도록 할 입력 더 많은 코드로 시도 :하지만

<?php 
    $input = trim($_POST["textarea"]); 

    echo $input; 
    echo "<br />"; 


    $alphabet = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'); 


    while (list(, $value) = each($alphabet) AND list(, $input) = each($value2)) { 
    if(strcmp($value2[0],$value)==0){ 
     echo "<img src='egypt/$value2.png'>"; 
     }else{ 
     echo "You did not write a"; 
     } 
    } 


    ?> 
작동 나던

위의 코드는 필수 코드입니다.

업데이트 : 알파벳의 첫 글자와 일치하는 방법을 찾지 만 전체 문자열을 공백으로 매핑하는 방법을 찾기 위해 고심하고 있습니다. 참조

<?php 
$input = trim($_POST["textarea"]); 

echo $input; 
echo "<br />"; 

$alphabet = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'); 


    if(strcmp($input[0],$alphabet)==0){ 
    echo "<img src='egypt/$input.png'>"; 
    }else{ 
    echo "Error"; 
    } 


?> 

코드 나는이 완전히 문제를 해결할 수 있는지 확실하지 않다

+0

당신은 달성하기위한 이러한 복잡한 방법을 사용하는 이유를 이해가 안가 간단한 결과 ... – animuson

답변

2

다른 경로를 제안 해 드리겠습니다.

$fos='hello world!'; 
$cucc=preg_replace('/([a-z])/', '<img src="$1.png" />', $fos); 

이는 IMG 동등한 모든 문자 (AZ)를 대체 할 것이다, 그래서 당신은이 결과를 얻을 것이다 :

<img src="h.png" /><img src="e.png" /><img src="l.png" /><img src="l.png" /><img src="o.png" /> <img src="w.png" /><img src="o.png" /><img src="r.png" /><img src="l.png" /><img src="d.png" />! 
0

을 관심 누군가를 위해 업데이트 할 수 있지만, 지금 당장이 발견 :

while (list(, $value) = each($alphabet) AND list(, $input) = each($value2))

는해야 :

while (list(, $value) = each($alphabet) AND list(, $value2) = each($input))