Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Зачищаем переменные внутри контейнера 
V
    Опции темы
InfMag
Дата 19.12.2008, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



Доброго времени суток! Извиняюсь конечно что лезу в основные принципы работы PHP, но только сейчас появилась такая острая необходимость.

В общем задача такого плана, я задаю переменные обыкновенных имен $file, $page и т.п. имею подключаемый файл в котором все пишу, которые инклудится, исходный файл, который инклудит трогать не могу, поэтому нужно работать именно внутри инклудируемого файла, вот мне нужно во избежание проблем типа unset-ить эти переменные которые я тама задам чтобы после инклуда они не прошли ниже по коду, каждый унсет прописывать я само собой не собираюсь. Вот на сколько я знаю если внутри цикла объявлять переменные - дальше цикла они не пойдут, так ведь?:

Код

for ($i=0; $i<1; $i++)
{

$page = "http://yandex.ru";
$file = "cash.dat";

}


Есть ли специально для этого предназначенные контейнеры или лучше не париться и брать цикл?
PM   Вверх
MoLeX
Дата 19.12.2008, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



InfMag, а ты выведи их после цикла вот и увидишь...

Добавлено через 2 минуты и 54 секунды
так и вопрос поставь по русски пожалуйста

Цитата(InfMag @  19.12.2008,  12:37 Найти цитируемый пост)
В общем задача такого плана, я задаю переменные обыкновенных имен $file, $page и т.п. имею подключаемый файл в котором все пишу, которые инклудится, исходный файл, который инклудит трогать не могу, поэтому нужно работать именно внутри инклудируемого файла, вот мне нужно во избежание проблем типа unset-ить эти переменные которые я тама задам чтобы после инклуда они не прошли ниже по коду, каждый унсет прописывать я само собой не собираюсь.

я понимаю что есть два файла index.php и include.php в котором точно такие же переменные как в index.php и тебя интересует 
можно ли их использовать дальше?!

Добавлено через 3 минуты и 7 секунд
или что?! 


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
pizzz
Дата 19.12.2008, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 238
Регистрация: 14.12.2008
Где: Омск

Репутация: 6
Всего: 8



Пойдут.  Непойдут только внутри функции.

Самый простой способ который приходит на ум первым:

Обьявляем всего одну переменную, массив.

Например так

Код

$arr['page'] = "http://yandex.ru";
$arr['file'] = "cash.dat";


А в конце файла просто 

Код

unset($arr);


понятно что $arr надо назвать как нить поинтересней  smile 
--------------------
Спасибо много, жмем кнопку репутация.  Извините меня за орфографические ошибки, я стараюсь не ошибаться, а они все равно просачиваются гады.     
PM MAIL ICQ   Вверх
InfMag
Дата 19.12.2008, 12:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



MoLeX, нет, мне нужно чтобы после цикла просто небыло этих переменных, до этого их нет. Просто например после инклуда может быть такая тема например if ( file_exists("stop.dat") ) $file=true; а потом еще ниже if (isset($file)) echo 'file!!!';
Дык вот, если после цикла остается переменная $file, то последние условие получается ошибочным. Думаю суть понятна. Есть ли для этого контейнеры или просто лучше брать для этого цикл? 
PM   Вверх
pizzz
Дата 19.12.2008, 12:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 238
Регистрация: 14.12.2008
Где: Омск

Репутация: 6
Всего: 8



Есть ли для этого контейнеры или просто лучше брать для этого цикл? 

Да контейнер называеться функция.

Код

function NameFunc(){
// код
}
NameFunc();

--------------------
Спасибо много, жмем кнопку репутация.  Извините меня за орфографические ошибки, я стараюсь не ошибаться, а они все равно просачиваются гады.     
PM MAIL ICQ   Вверх
InfMag
Дата 19.12.2008, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



Хмм.. Я думал что дальше цикла переменные не идут(( получил 1
Код

for ($i=0; $i<1; $i++)
{
    $page123 = "test";
    echo $page123;
}

if (isset($page123)) echo 1; else echo 0;


Добавлено через 29 секунд
pizzz, спс))

Добавлено через 2 минуты и 54 секунды
да! и еще круто что внутрь функцию просто так не попадают другие переменные! идеальное решение!
PM   Вверх
pizzz
Дата 19.12.2008, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 238
Регистрация: 14.12.2008
Где: Омск

Репутация: 6
Всего: 8



Рад был помочь   smile 
--------------------
Спасибо много, жмем кнопку репутация.  Извините меня за орфографические ошибки, я стараюсь не ошибаться, а они все равно просачиваются гады.     
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0827 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.