[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Визов функции между echo <<<END END;
kasichvadim
Здравствуйте!

Кусок кода:
PHP
echo <<<END
<select class="s1">
        <option value="1">$lang_array
[vinnitskaya]</option>
        <option value="2">$lang_array
[volynskaya]</option>
        <option value="3">$lang_array
[dnepropetrovskaya]</option>
        <option value="4">$lang_array
[donetskaya]</option>
        <option value="5">$lang_array
[zhitomyrskaya]</option>
        <option value="6">$lang_array
[zakarpatskaya]</option>
        <option value="7">$lang_array
[zaporozhskaya]</option>
        <option value="8">$lang_array
[ivano_frankovskaya]</option>
</select>
END;

Как в таком случае вызвать функцию?
Мне нужно что-то типа такого:
PHP
...
<
option value="3">some_function($lang_array[dnepropetrovskaya])</option>
...

Но так функция не вызывается.
Можно конечно через echo, но это кругом нужно экранировать двойные кавычки:
PHP
...
echo "<option value=\"3\">" . some_function($lang_array[dnepropetrovskaya]) . "</option>";
...

когда хтмл кода слишком много, очень напряжно экранировать кругом кавычки.

Может есть еще какой другой способ, более легкий?



Спустя 31 минута, 18 секунд (27.05.2009 - 12:05) kirik написал(а):
PHP
но это кругом нужно экранировать двойные кавычки........Может есть еще какой другой способболее легкий?

Есть - использовать одинарные кавычки smile.gif
PHP
echo '<option value="3">' some_function($lang_array[dnepropetrovskaya]) . '</option>';


Но лучше подумать, и свести к минимуму вызов функции в данном случае..

Спустя 32 минуты, 2 секунды (27.05.2009 - 12:37) jetistyum написал(а):
почитав документацию по heredoc видим:
Цитата

Heredoc-текст ведет себя так же, как и строка в двойных кавычках, при этом их не имея. Это означает, что вам нет необходимости экранировать кавычки в heredoc, но вы по-прежнему можете использовать вышеперечисленные управляющие последовательности. Переменные обрабатываются, но с применением сложных переменных внутри heredoc нужно быть также внимательным, как и при работе со строками.

на странице документации найдешь множество примеров.

Спустя 14 минут, 45 секунд (27.05.2009 - 12:52) kasichvadim написал(а):
Цитата (jetistyum @ 27.05.2009 - 11:37)
почитав документацию по heredoc видим:
Цитата

Heredoc-текст ведет себя так же, как и строка в двойных кавычках, при этом их не имея. Это означает, что вам нет необходимости экранировать кавычки в heredoc, но вы по-прежнему можете использовать вышеперечисленные управляющие последовательности. Переменные обрабатываются, но с применением сложных переменных внутри heredoc нужно быть также внимательным, как и при работе со строками.

на странице документации найдешь множество примеров.

Большое спасибо! То, что нужно!

Спустя 56 минут, 5 секунд (27.05.2009 - 13:48) jetistyum написал(а):
не ленитесь обращаться к официальной документации, люди, там содержится 50% ответов на ваши вопросы
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.