I am trying to do something similar to hangman where when you guess a letter, it replaces an underscore with what the letter is. I have come up with a way, but it seems very inefficient and I am wondering if there is a better way. Here is what I have - \[code\]<?$word = 'ball';$lettersGuessed = array('b','a');echo str_replace( $lettersGuessed , '_' , $word ); // __llecho '<br>';$wordArray = str_split ( $word );foreach ( $wordArray as $letterCheck ){ if ( in_array( $letterCheck, $lettersGuessed ) ) { $finalWord .= $letterCheck; } else { $finalWord .= '_'; }}echo $finalWord; // ba__?>\[/code\]str_replace does the opposite of what I want. I want what the value of $finalWord is without having to go through a php loop to get the result I desire.