За последние 24 часа нас посетили 54973 программиста и 1748 роботов. Сейчас ищут 870 программистов ...

Подстановка переменных в строке заданной вне функции

Тема в разделе "Прочие вопросы по PHP", создана пользователем alcrux, 19 ноя 2015.

  1. alcrux

    alcrux Активный пользователь

    С нами с:
    14 сен 2007
    Сообщения:
    2
    Симпатии:
    0
    Добрый день

    Известно что можно использовать конструкцию
    Код (PHP):
    1. $name = 'Smith' ;
    2. echo "His name is $name" ;
    3.  
    Она выводит то что нужно. Но хотелось бы иметь следующее

    Код (PHP):
    1. $fmt = "His name is $name"
    2.  
    3. function Print()
    4. {
    5.   global $fmt ;
    6.   $name = 'Smith' ;
    7.   echo $fmt ;
    8. }
    9.  
    Вызов Print() выводит
    His name is

    Возможно ли получить требуемое(вывод происходит внутри функции, а строка $fmt находится вне) и что для этого надо изменить?

    PHP, JavaScript, SQL и другой код пишите внутри тегов
    Код ( (Unknown Language)):
    1. [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
  3. p@R@dox 55RU

    p@R@dox 55RU Зэк
    [ БАН ]

    С нами с:
    21 май 2014
    Сообщения:
    1.358
    Симпатии:
    7
    Адрес:
    с планеты Ялмез
    последовательность не верно указано - область видимости (;
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    а зачем так делать?
     
  5. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
    Код (PHP):
    1. <?php
    2. define('FMT', 'His name is %s');
    3. function pprint($name){
    4.     printf(FMT, $name);
    5. }
    6. pprint('Smith');