Include in class не работает? (+)

dak

Guest
Include in class не работает? (+)

Кусок комментария пользователей из PHP-шного скрипта.

------------------------------
Require nor Include function inner a class file.

This is the file where I define the class:
----- 1.php -----
PHP:
<? 
class test { 
include("2.php"); 
} 
?>
------ end ------

And this is the file where I have content.
----- 2.php -----
PHP:
<? 
var $a=1; 
function method1 () { 
$this->a++; 
} 
?>
------ end ------

This does not work.
------------------------------

Это правда? По ходу дела у меня не то что функцию вставить, а даже проинклудить определение переменных не получается... :-( Что делать, если нужно в класс, например, нужно включать определение каких-то параметров?
 

Poltergeist

Guest
А зачем ??? Если наследовать какой-то другой класс, то файл нужно включать до определения класса
 

s_victor

Guest
Фишка-то в чем.

Столкнулся с той же проблемой,
хотел часть методов выкинуть из класса в другие файлы,
и потом их инклудить для сборки других классов других проектов.

Однако
конструкция

class Index{
function Register($param){
require("a.php");
}
};

// a.php
<?echo "metod Register";?>
поддерживается, а конструкция типа
class Index{
require("a.php");
};

// a.php
<?
function Register($param){
echo "method Register";
?> не поддерживается.
 

Demiurg

Guest
s_victor
не правильно ты используешь классы. Наследование и агрегацию как раз для этого и придумали, что бы собирать классы "ии кусочков"
 

s_victor

Guest
Зато отлаживать проще, не приходится по коду в 1500 строк постоянно лазить и гонять туда-сюда весь файл, при отладке метода.

Да и когда я делаю друой сайт, то часть методов просто ненужна, часть нуждается в редактировании.
Можно конечно написать нечто универсальное, но все же.
 
Сверху