web-dev-qa-db-fra.com

Variable d'état du modèle d'accès dans la vue

Cela pourrait être une question simple, j'ai variable de l'état du modèle défini dans mon modèle. Quand je "print_r" il en vue. Il fournit la sortie suivante:

JObject Object
(
    [_errors:protected] => Array
        (
        )

    [task] => 
    [request.id] => 3
    [params] => Joomla\Registry\Registry Object
        (
            [data:protected] => stdClass Object
                (
                    [path] => /media/com_helpdesk/files/
                )

            [separator] => .
        )

)

Je peux accéder à la variable 'tâche', 'params' dans mon view.html.php comme suit:

echo $this->get('State')->params

ma question est, comment puis-je accéder à la variable "request.id" de la même manière.

c'est-à-dire echo $this->get('State')->request.id

Ci-dessus est (bien sûr) ne fonctionne pas en raison de ". (Point)" supplémentaire.

Veuillez noter que cette question n'est pas une copie de À partir du modèle, comment puis-je accéder aux données récupérées dans la vue? car j'essaie d'imprimer une variable avec l'opérateur "point"

1
Sahil Purav

Vous devriez utiliser la fonction get de l'objet state (objet de la classe JObject)

$state = $this->get('State');
$requestId = $state->get('request.id', 0);

le second paramètre est la valeur par défaut à renvoyer s'il n'existe aucune valeur dans l'objet state avec le premier paramètre donné.

2
Nagarjun