Переменная внутри строки
"Переменная в строке". Рассмотрим все варианты , когда переменные в строке работает и когда переменная в строке не работают! С живыми примерами и кодом!
Переменная в строке работает как переменная.
- Переменная в строке - введение
- Переменная в строке.
- Переменная в строке не сработает.
- Не работающую переменную в строке заставляем работать.
- #2 Не работающую переменную в строке заставляем работать.
- Ещё пример переменная в строке работает.
Переменная в строке - введение
Давно надо было сделать такую страницу, чтобы поставить все точки над "Ё"!
Зачем нужна переменная в строке?
Переменная в строке нужна для того, чтобы ваш контент был живым, а не мертвым текстом однажды написанным.
Пример Зачем нужна переменная в строке?
Чтобы далеко не углубляться в проблему перейдем сразу к примеру!
Пример кода со строкой и переменной внутри:
Предположим, самое простое! Что у вас есть две переменные, одна из которых находится внутри второй переменной(в смысле внутри значения):
<?
$first = date('i и s');//сделаем её динамической .
$second = 'Сейчас минут '.$first.' секунд!';
echo $second;
?>
Выведем Пример кода со строкой и переменной внутри:
Выведем пример кода со строкой и переменной внутри прямо здесь:
Проблема в том, что нам надо разобраться, а как вывести такую переменную, чтобы она срабатывала всегда и даже если переменные находятся в другом файле!
Переменная в строке.
Выше я уже привел пример, который не нуждается в объяснениях, переменная внутри второй переменной работает, так как переменная и должна работать! Но далее(после вывода кода) мы перейдем к более интересном...
Давайте предположим, что вам требуется поместить и сохранить какой-то код с переменной внутри файла
Используем данный пример как базу и поместим измененный верхний приведенный код и поместим его в файл "
<?
$second_1 = 'Сейчас минут '. $first_var .' секунд!';
?>
На страницу, существующий файл в браузере, естественно, что вы ничего не увидите .
Две переменные у нас будут существовать всегда, они будут стоять выше всего стального кода:
$first_var
$home - путь до корневой.
Используем include:
Смотрим на код:
<?
$first_var = date('i и s');
$home = $_SERVER['DOCUMENT_ROOT'];
include $home . '/example/php/vars_php/example_1.php';
echo $second_1;
?>
Далее вы можете посмотреть сработает ли переменная в находящаяся в строке - смотрим:
Если вы посмотрели предыдущую ссылку, то смогли увидеть, что переменная сработала внутри строки!
Переменная в строке не сработает.
Рассмотрим, когда переменная внутри строки не будет срабатывать, а потом посмотрим, как решить эту задачку...
Возьмем под копирку предыдущий пункт, но в файле "example_2.php", теги php уберем:
$second_1 = 'Сейчас минут '. $first_var .' секунд!';
Естественно, что, если вы откроете этот файл в браузере example_2.php, то вы увидите именно эту строку, поскольку здесь, в отличии от предыдущего пункта, код php просто не сработает.
И далее... если вы используете такой же код и поместите его на страницу(второй пример) , тоже не сработает, поскольку он изначально выводит строку... а не код php.
<?
$first_var = date('i и s');
$home = $_SERVER['DOCUMENT_ROOT'];
include $home . '/example/php/vars_php/example_2.php';
echo $second_1;
?>
Этот пример нужен был для того, чтобы далее не объяснять это несколько раз! В том смысле, что эту переменную в строке мы можем заставить сработать!
Не работающую переменную в строке заставляем работать.
Выше приведенном пункте я рассмотрел, когда переменная не работает в строке.
Давайте сделаем так, чтобы она заработала!
Опять две переменные сверху идущего ниже кода постоянные.
Получаем include в переменную 4-7строка.
Далее вам потребуется eval.
И выводим переменную с помощью echo.
Соберем весь код:
Код работающей переменной в строке.
<?
$first_var = date('i и s');
$home = $_SERVER['DOCUMENT_ROOT'];
ob_start();
include ( $home . '/example/php/vars_php/example_2.php' );
$result_include = ob_get_clean();
ob_end_clean();
eval( $result_include );
echo $second_1 ;
?>
Пример работающей переменной в строке.
Далее разместим данный пример на страницу и посмотрим, сработает ли переменная в строке:
Как видим, переменная внутри строки замечательно сработала!
#2 Не работающую переменную в строке заставляем работать.
В выше приведенном примере использовалось получение переменной в строку с помощью include? я бы сказал довольно экзотический способ.
Давайте сделаем по другому:
Возьмем этот же код и упростим его используя file_get_contents.
Всё остальное аналогично!
Соберем весь код:
Код работающей переменной в строке.
<?
$first_var = date('i и s');
$home = $_SERVER['DOCUMENT_ROOT'];
eval( file_get_contents ($home . '/example/php/vars_php/example_2.php') );
echo $second_1 ;
?>
Пример работающей переменной в строке.
Абсолютно также - давайте посмотрим, будет ли работать переменная в строке:
Как видим, и этот вариант работает, в строке находится работающая переменная!
Ещё пример переменная в строке работает.
Ну и давайте рассмотрим ещё один вариант работающей переменной в строке:
Предположим, что строка в файле у вас будет иметь вот такой вид:
Смотрим на файл example_3.php.
Код работающей переменной в строке.
<?
$first_var = date('i и s');
$home = $_SERVER['DOCUMENT_ROOT'];
$str = file_get_contents ( $home . '/example/php/vars_php/example_3.php');
eval("\$str = \"$str\";");
echo $str ;
?>
Пример работающей переменной в строке.
Что можно сделать!?
Поделиться ссылкой! C друзьями или врагами!