za4me
@za4me
Человек

Отображение переменной в одном файле, но отключение в другом?

Столкнулся с небольшим вопросом. Как имея два файла (2й подключен к 1му), во втором вывести на экран переменную, а в первом нет.

Пример: 1й файл
include 'fail2.php';

#code........


2й файл

$text = "123123123";
	echo $text;


Переменная text будет отображаться и в 1м и во 2м. Пробовал в 1й написать unset ($text);, но не помогло.

Спасибо.
  • Вопрос задан
  • 137 просмотров
Решения вопроса 1
valerium
@valerium
Изобретая велосипед
Объявите в первом файле переменную или константу. Из второго файла проверьте, объявлена ли эта переменная или константа. В зависимости от этого, выводите или не выводите текст. Можно ничего специально не объявлять, а проверить существование функции/переменной/константы, гарантированно имеющейся в первом файле.

Примерно так модули движков убеждаются, что они именно включены движком, а не запущены как отдельный скрипт.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
bigton
@bigton
Web-программист
if ($_SERVER['SCRIPT_NAME'] == '/fail2.php')
    echo $text;
Ответ написан
Adamos
@Adamos
Как это верно - хранить подобный код в файлах с названием fail!
Простое правило: если код исполняется несколько раз из разных мест, поместите его в функцию и вызывайте ее, когда надо и как надо. Если функций несколько и они работают с некоей общей логикой - соберите их в класс.
Код, собранный в функции и классы, выньте из тех скриптов, к которым непосредственно обращается пользователь, и вынесите в отдельные папки, закрыв к ним доступ извне - просто за ненадобностью.
Это просто, правда.
Зато при подключении файлов подобных вопросов просто никогда не будет возникать.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 14:10
500 руб./за проект
19 апр. 2024, в 13:31
10000 руб./за проект