Простейший вопрос по OOP (использование ф-й других класов)

...:::Alex:::..

Новичок
Простейший вопрос по OOP (использование ф-й других класов)

Собсно как реализовать такое:

Скажем эсть 3 файла:
1.php - он и бует запускатся изначально
PHP:
<?php
include "2.php"; include "3.php";

$a = new Class1;
$a->c = "медвед";

$b = new Class2;
$b->test2();
?>
2.php - первый класс
PHP:
<?php
class class1{
  var $c;
  function test1(){
	 echo $this->$c;
  }
}
?>
3.php - второй класс, там где будет использоватся ф-и из класса 1
PHP:
<?php
class class2{
  function test2(){
	 echo "Превед ";
	 $b->test1();
  }
}
?>
Вообщем ситуация такая:

В первом файле создается первый и второй класс, применяются параметры.
Первый клас сам по себе.
А второй клас дожен использовать первый (параметры которого мы создали в первом файле.)

Наследование не подходит потому что не хочу несколько раз создавать класс, и применять везде параметры.

Как соорудить такое? При попытке вызвать во втором класе - ф-ю test1 возникает ошибка. Как соорудить правильно?
 

hermit_refined

Отшельник
Наследование не подходит потому что не хочу несколько раз создавать класс, и применять везде параметры.
не подходит из-за того что параметры первого класа должны присваиватся в файле 1.php
расшифруйте, пожалуйста.
и приведите осмысленный пример.
без всяких class1, class2, test1, test2...

P.S. то, что у вас ошибка в class1::test1() - вы знаете?..
P.P.S. откуда у вас вообще $b берется?
 

...:::Alex:::..

Новичок
расшифруйте, пожалуйста.
и приведите осмысленный пример.
без всяких class1, class2, test1, test2...

P.S. то, что у вас ошибка в class1::test1() - вы знаете?
P.P.S. откуда у вас вообще $b берется-то?
хм...
Коротко: В первом файле создали два класа, и применили к ним параметры.
Во втором класе используем ссылку и первго файла. (т.е $b - это клас который был создан в первом файле)
ну незнаю как еще обьяснить, получить ссылку во втором класе на первый. :)
 

hermit_refined

Отшельник
во-первых, если разделяете на файлы, то разделяйте по-человечески.
грубо говоря, по файлу на класс, в основном скрипте подключаете их, создаете объекты, etc.
во-вторых, опишите _реальную_ ситуацию.
 

...:::Alex:::..

Новичок
Как создать обьэкт? :(

Вообщем ситуация такая:
Один класс работает с бд (соединение и т.д.) и этот класс используется в остальных. т.е в главном файле и втором класе.

Ps. при передаче по ссылке php ругается "Call-time pass-by-reference has been deprecated..."

Подскажите как лутче сделать? класы уже готовы. а вот как их связать посоветуйте
 

Апокалипсис

тех дир matras.ru
...:::Alex:::..
1. Использовать extends
2. Вызывать класс в конструкторе другого класса
3. Передавать объект по ссылке

Что у тебя в классе с базой такого ? Имя хоста, пароль к мускул?
Его можно передать сразу в класс.
 

hermit_refined

Отшельник
...:::Alex:::..
хм...
оставьте пока свои проблемы.
прочитайте главы документации, посвященные функциям и объектам.
 

...:::Alex:::..

Новичок
Что у тебя в классе с базой такого ? Имя хоста, пароль к мускул?
это MySQLDriver.php из IPB. эго я и использую. параметры применяются в главном файле, а использовать его нужно и в главном и в другом классе.
 

Alkinoy

Начинающий
PHP:
function test2(){ 
     echo "Превед "; 
     $b->test1(); 
  }
Вот тут, имхо, бред написан. $b получается локальной переменной функции....
 
Сверху