How to replace a random word in a string with a random word from an array of words using PHP

1 Answer

0 votes
function replace_random_word(string $text, array $replacementWords): string
{
    $words = explode(' ', $text);

    if (empty($words) || empty($replacementWords)) {
        return $text; // nothing to do
    }

    // Pick random index in the sentence
    $idx = array_rand($words);

    // Pick random replacement word
    $newWord = $replacementWords[array_rand($replacementWords)];

    // Replace it
    $words[$idx] = $newWord;

    // Rebuild the string
    return implode(' ', $words);
}

$text = "The quick brown fox jumps over the lazy dog";
$replacementWords = ["c#", "c++", "java", "rust", "python"];

$result = replace_random_word($text, $replacementWords);
echo $result;



/*
run:

The c# brown fox jumps over the lazy dog

*/

 



answered Feb 13 by avibootz

Related questions

...