No entiendo bien tu duda, para implementar una interface tienes que declarar el metodo en tu clase, ahora la forma para PHP es muy directa, casi como java, asi que no veo porque tienes ese problema.
Para "solucionar" lo que haces puedes usar strings en lugar de constantes:
Código PHP:
class Persona implements Bean
{
public $id;
public $nombre;
public $apellido;
public $documento;
public class getDAO()
{
return "PersonaDAO";
}
public class getForm()
{
return "PersonaFORM";
}
}
$DAO = new $persona->getDAO(); // No estoy seguro si asi pero puedes probar asi:
$pDAO = $persona->getDAO();
$DAO = new $pDAO();
Y para contestar tu ultima duda, para persistir los objetos en la memoria, si usas sesiones, pero no necesariamente serialize y unserialize puedes guardar un objeto directamente en el array de $_SESSION y sacarlo en la otra pagina.
Ej:
Código PHP:
// Incluir definicion de tu clase
$objeto = new Objeto();
session_start();
$_SESSION['elObjeto'] = $objeto;
Código PHP:
// Importante incluir la definicion antes
session_start();
$objeto = $_SESSION['elObjeto'];