2013-02-21 6 views
1

$hello의 단어 중 하나를 입력 할 때 임의로 단어 $bye 중 하나를 선택하여 표시하도록하려고합니다. 내가 그것을 시도 할 때, 그것은 단지 0, 1 또는 2.라고 말합니다. 어떻게하면이 배열을 고쳐서 $bye 배열의 단어 중 하나를 임의로 줄 것입니다.PHP에서 배열의 항목 하나를 무작위로 표시하도록하려면 어떻게해야합니까?

<?php 
$words = $_POST['words']; 
$hello = array('hello', 'hi', 'yo', 'sup'); 
$bye = array('bye', 'seeya', 'aurevoir'); 
$words = preg_replace('/\b('.implode('|', $hello).')\b/i', '<span class="highlight">'.array_rand($bye).'</span>', $words); 
echo $words; 
?> 
+0

죄송합니다, 현재이 질문에 기여할 수 없습니다. 위의 질문에 대해 _edit_ 세부 사항을 작성하십시오. 특히 코드를 형식화하기 위해 내장 편집기 기능을 사용하여 현재 코드를 읽기 쉬운 방법으로 게시하십시오. 현재 코드 스 니펫이 충분하지 않습니다. – arkascha

답변

0
$hello = array("Hi", "Hola", "Yo dawg! I heard you liked words in your hello!"); 
$bye = array("Later","Hasta Luego","Guten Tag"); 
echo $bye[array_rand($hello)]; 
1
$index = array_rand($bye); 
echo $bye[$index]; 
0

당신이 preg_replace

$words="this is any text bye"; 
$bye = array('/bye/', '/seeya/', '/aurevoir/'); //pattern 

$hello=array('hello', 'hi', 'yo'); //$replacements 
shuffle($hello); 

echo preg_replace($bye, $hello, $words); 
0

와 배열을 사용할 수는 $word이있는 경우 $bye 배열에서 임의의 항목을 선택하려면 내가 명확하게 질문을 이해하지 못했다 $hello 배열이 하나 시도 :

$hello = array('hello', 'hi', 'yo', 'sup'); 
$bye = array('bye', 'seeya', 'aurevoir'); 
if(in_array($word,$hello)) 
    echo $bye[array_rand($bye)]; 
else 
    echo "word is not in hello array"; 
관련 문제