@Shimpanze

Почему в простой функции, не перезаписывается переменная?

Простая функция, должна выводить:

foo-1 foo-2 foo-3

вместо этого она выводит:

foo-1 foo-1 foo-1

Почему внутри функции не перезаписывается, переменная '$str'???

Функция:

function my_func( $num, $str ) {
    // вывести столько строк, сколько передано в параметре '$num'
    for ( $i = 1; $i <= $num; $i++ ) {
        // почему здесь не перезаписывается переменная '$str'???
        $str = sprintf( $str, $i );

        echo $str;
    }
}


Вызов:

my_func( 3, 'foo-%s ' );
  • Вопрос задан
  • 99 просмотров
Решения вопроса 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
А если так?
function my_func( $num, $str ) {
    // вывести столько строк, сколько передано в параметре '$num'
    for ( $i = 1; $i <= $num; $i++ ) {
        // почему здесь не перезаписывается переменная '$str'???
        $str2 = sprintf( $str, $i );

        echo "{$str}: {$str2}\n";
    }
}
my_func( 3, 'foo-%s ' );
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы