0

I want to learn Zend Framework 2, I already install it in my machine, I reached the welcome page, that's good, so when I look it's structure it has a big difference in CodeIgniter or Laravel, my problem is I want to display some text or string in my index.phtml. In my IndexController.php I got this.

public function indexAction() {
    $sample = 'sample string'; // this is what I want to pass in my index.phtml
    return new ViewModel();
}
  1. How can I pass the variable into my index.phtml ?
  2. How can I display it in my index.phtml?

For example, in CodeIgniter look like this.

//Controller.php
public function indexAction() {
    $data = 'Sample data'; // this is sample string that will display in my index.php
    return view('home',$data);
}
//View
<?php
   echo $data; // it will print the string in my $data(variable); 
?>

I'm newbie in Zend Framework 2, I don't have any idea in this framework. help me guys.
Thank you in advance for helping mo to solve my problem.

1 Answer 1

4

In Zend 2, you pass any variable you want to use in your view to ViewModel or return an array:

public function indexAction() {
    $sample = 'sample string'; // this is what I want to pass in my index.phtml
    return new ViewModel(array(
        "sample" => $sample
    ));
}

or:

public function indexAction() {
    $sample = 'sample string'; // this is what I want to pass in my index.phtml
    return array(
        "sample" => $sample
    );
}

You can then access $sample in your index.phtml like this:

<?php echo $this->sample ?>

The array key will always be the property name of your view.

For more information see also:

http://framework.zend.com/manual/current/en/modules/zend.view.quick-start.html

Sign up to request clarification or add additional context in comments.

1 Comment

Thanks for this answer, Thank you for your attention.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.