str_repeat

(PHP 4, PHP 5, PHP 7, PHP 8)

str_repeatRépète une chaîne

Description

str_repeat(string $string, int $times): string

Retourne la chaîne string répétée times fois.

Liste de paramètres

string

La chaîne à répéter.

times

Nombre de fois où la chaîne string doit être multipliée.

times doit être positif ou nul. Si times vaut 0, la fonction retourne la chaîne vide.

Valeurs de retour

Retourne la chaîne, répétée times fois.

Exemples

Exemple #1 Exemple avec str_repeat()

<?php
echo str_repeat("-=", 10);
?>

L'exemple ci-dessus va afficher :

-=-=-=-=-=-=-=-=-=-=

Voir aussi

  • for
  • str_pad() - Complète une chaîne jusqu'à une taille donnée
  • substr_count() - Compte le nombre d'occurrences de segments dans une chaîne

add a note

User Contributed Notes 4 notes

up
42
Damien Bezborodov
16 years ago
Here is a simple one liner to repeat a string multiple times with a separator:<?phpimplode($separator, array_fill(0, $multiplier, $input));?>Example script:<?php// How I like to repeat a string using standard PHP functions$input = 'bar';$multiplier = 5;$separator = ',';print implode($separator, array_fill(0, $multiplier, $input));print "\n";// Say, this comes in handy with count() on an array that we want to use in an// SQL query such as 'WHERE foo IN (...)'$args = array('1', '2', '3');print implode(',', array_fill(0, count($args), '?'));print "\n";?>Example Output:bar,bar,bar,bar,bar?,?,?
up
5
Alexander Ovsiyenko
7 years ago
http://php.net/manual/en/function.str-repeat.php#90555Damien Bezborodov , yeah but execution time of your solution is 3-5 times worse than str_replace.<?phpfunction spam($number) {    return str_repeat('test', $number);}function spam2($number) {    return implode('', array_fill(0, $number, 'test'));}//echo spam(4);$before = microtime(true);for ($i = 0; $i < 100000; $i++) {    spam(10);}echo microtime(true) - $before , "\n"; // 0.010297$before = microtime(true);for ($i = 0; $i < 100000; $i++) {    spam2(10);}echo microtime(true) - $before; // 0.032104
up
0
claude dot pache at gmail dot com
16 years ago
Here is a shorter version of Kees van Dieren's function below, which is moreover compatible with the syntax of str_repeat:<?phpfunction str_repeat_extended($input, $multiplier, $separator=''){    return $multiplier==0 ? '' : str_repeat($input.$separator, $multiplier-1).$input;}?>
up
-1
Anonymous
13 years ago
hi guys , 
i've faced this example :
<?php

$my_head = str_repeat("°~", 35);
echo $my_head;

?>

so , the length should be 35x2 = 70 !!!
if we echo it :

<?php
$my_head = str_repeat("°~", 35);
echo strlen($my_head); // 105
echo mb_strlen($my_head, 'UTF-8'); // 70
?>

be carefull with characters and try to use mb_* package to make sure everything goes well ...
To Top