dongliling6336 2016-12-19 02:22
浏览 67
已采纳

(PHP)如何使用值数组替换字符串中的不同子串?

How can I replace a set of placeholders on a string with an array of substrings?

My code:

$replaceWith = array('FIAT', 'car');
$message = '{%s} is the best {%s} of the world.';
$finalMessage = str_replace(array_fill(0, count($replaceWith), '{%s}'), $replaceWith, $message);

var_dump($finalMessage);

Outputs:

string 'FIAT is the best FIAT of the world.' (length=35)

Desired Output:

string 'FIAT is the best car of the world.' (length=34)

Thks in advance!

  • 写回答

1条回答 默认 最新

  • dongmei5168 2016-12-19 02:31
    关注

    Try below:

    <?php
    $subject = '%s is the best %s of the world.';
    $values = array('FIAT', 'car');
    echo vsprintf($subject, $values);
    ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?