@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 ' );
  • Вопрос задан
  • 98 просмотров
Решения вопроса 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 ' );
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
Бюро Цифровых Технологий Санкт-Петербург
от 120 000 до 180 000 ₽
01 мая 2024, в 14:56
1000 руб./в час
01 мая 2024, в 14:51
50000 руб./за проект
01 мая 2024, в 14:34
3000 руб./за проект