It was not explicit but it looks like you want it to be sent by session
. So you can just sit down in the session and get back in the other control.
<?php
// declaração da classe Pessoa
class Pessoa {
public $nome;
}
// No Controller que envia os parametros
session_start();
$joao = new Pessoa();
$joao->nome = "João";
$_SESSION['pessoa'] = $joao;
// No Controller que recebe os dados
session_start();
$joao = $_SESSION['pessoa'];
print_r($joao);
Or if you want to standardize this and play in the object orientation paradigm
<?php
// controller que envia
$joao = new Pessoa();
$joao->nome = "João";
SessionUtils::setPropriedade('pessoa', $joao);
// controller que recebe
$joao = SessionUtils::getPropriedadeLimpar('pessoa');
print_r($joao);
// declaração da classe Pessoa
class Pessoa {
public $nome;
}
// classe util para a sessão
class SessionUtils {
private static $BASE_PROPRIEDADES = "props";
/**
* Pega uma propriedade da sessão
* @return a propriedade ou null se não existir
*/
public static function getPropriedade($nome){
self::configurarSessao();
$sessao = self::getSessao();
return @$sessao[$nome];
}
/**
* Pega uma propriedade da sessão e depois a exclui da mesma
* @return a propriedade ou null se não existir
*/
public static function getPropriedadeLimpar($nome){
self::configurarSessao();
$sessao = self::getSessao();
$valor = @$sessao[$nome];
self::setPropriedade($nome, null);
return $valor;
}
/**
* Seta uma propriedade na sessão
*/
public static function setPropriedade($nome, $valor){
self::configurarSessao();
$_SESSION[self::$BASE_PROPRIEDADES][$nome] = $valor;
}
/**
* Configura a sessão para guardar os itens
*/
private static function configurarSessao(){
if(!isset($_SESSION)){
session_start();
}
if(!self::getSessao() || !is_array(self::getSessao())){
self::setSessao(array());
}
}
private static function getSessao(){
return $_SESSION[self::$BASE_PROPRIEDADES];
}
private static function setSessao($valor){
$_SESSION[self::$BASE_PROPRIEDADES] = $valor;
}
}