Я пытаюсь сделать что-то похожее на палача, где, когда вы угадываете письмо, он заменяет символ подчеркивания тем, что такое буква. Я придумал способ, но он кажется очень неэффективным, и мне интересно, есть ли лучший способ. Вот что у меня есть -hangman «word» in php
<?
$word = 'ball';
$lettersGuessed = array('b','a');
echo str_replace($lettersGuessed , '_' , $word); // __ll
echo '<br>';
$wordArray = str_split ($word);
foreach ($wordArray as $letterCheck)
{
if (in_array($letterCheck, $lettersGuessed))
{
$finalWord .= $letterCheck;
} else {
$finalWord .= '_';
}
}
echo $finalWord; // ba__
?>
str_replace
делает противоположное тому, что я хочу. Я хочу, что значение $finalWord
не нужно проходить через цикл, чтобы получить желаемый результат.
Существует ли регулярное выражение в PHP? Если это так, вы можете заменить все возникновение или. (который является любым символом) с помощью _. В Perl это будет похоже на thist: s /./_/ g –