PDA

Просмотр полной версии : include в функции


drwhite
04.06.2007, 15:58
Есть

http://localhost/some/dir/1.php

<?php
$var = 234;
?>


http://localhost/some/2.php

include_once('dir/1.php');
echo $var; //всё работает


Теперь если поместить include в функцию — не пашет.
http://localhost/some/2.php

<?php
function load($path)
{
include_once($path);
}//
load('dir/1.php');
echo $var; //Notice undefuned variable var
?>


Я с ума сошел, или все-таки что-то там …, потому что помню, 100% все работало...

Skubent
04.06.2007, 16:57
А теперь идем и вкуриваем мануал про то, что именно делает include() и про области видимости переменных.

drwhite
04.06.2007, 20:11
Ну это тоесть — да, практически сразу нашел, просто «чертЬегознает»:
во-первых как-то странно получается, есть же функции-процедуры с чисто номинальным ретёрном, которые как раз и занимаются исполнением, а не возвращением значений, ну да ладно, изюм в том, что внатуре как-то эта конструкция у меня работала, причем не просто в функции, а как метод класса, который вообще черт знает где (ну в смысле далеко) находился, и нормально так работала, просто он дома остался =)))

Skubent
05.06.2007, 12:42
Хмм, хотелось бы увидеть, где и как оно работало.

drwhite
05.06.2007, 22:12
Да мне и самому жутко интересно, только вот до домашнего компа дорвусь… =)