<?php
class a
{
public function method ()
{
$a = new B ($this);
}
}
class b
{
public function __construct (a $a)
{
// Манипуляции с членами a
}
}
?>
добавлено спустя 2 минуты:
Внутри класса A создается объект класса B, которому передается текущий объект класса A ($this)
Говнокод - это когда тысячи echo, сотни лишних запросов к базе и нет отступов. А тут норм 
Gemorroj, потому что A и B выполняют совсем разные задачи. И унаследовать их друг от друга невозможно.
Но тем не менее, B должен иметь доступ к объектам A.
проголосовал норм.) в приведенном примере, просто код довольно бессмысленный, но по сути, мне кажется, ничего криминального нету.
16 Апр 2012, 19:25Я тоже так думаю. Если это оправдано удобностью и возможностью тестировать - то возможно, это ведь только каркас, непонятно, что, собственно, должен делать код.
16 Апр 2012, 19:37Спасибо.
"оправдано удобностью" - да, оправдано
добавлено спустя 3 минуты:
/**
* @param $model object Объект текущей модели
*/
public function __construct (Model $model)
{
$params = get_object_vars ($model);
// Копируем члены из модели сюда и выполняем правила валидации
foreach ($params as $key => $value)
{
// Копируем
$this->{$key} = $value;
// Выполняем
$method = 'validation' . ucfirst ($key);
if (method_exists ($this, $method))
$this->$method ();
}
}