2012-06-11 15 views
6

tôi biết rằng tôi có thể sử dụngZF2: Zend Framework 2 - làm thế nào để làm cho sản lượng mà không cần bố trí

public function providerAction() 
{ 
    $result = new ViewModel(); 
    $result->setTerminal(true); 

    return $result; 
} 

Nhưng làm thế nào để vượt qua các biến để xem? Trước khi tôi đã làm điều này

return array('items' => $items); 

Nhưng bây giờ tôi chỉ có một lựa chọn một trong hai mảng trở lại và sau đó bố trí là có hoặc trả lại $result sau đó biến không nằm trong tầm nhìn.

+0

Một câu hỏi tương tự với một câu trả lời chi tiết hơn. Xem http://stackoverflow.com/a/9870758/951920 –

Trả lời

23

Trong ví dụ của bạn, bạn có thể viết như thế này:

public function providerAction() 
{ 
    $result = new ViewModel(); 
    $result->setTerminal(true); 
    $result->setVariables(array('items' => 'items')); 
    return $result; 
} 
+0

Weeeee !!)))))) –

+1

Đó là một câu trả lời tuyệt vời, sẽ là tốt nếu bạn chấp nhận nó :) –

2

Câu trả lời trước đó hoạt động hoàn hảo. Tôi chỉ muốn nói thêm rằng thay vì sử dụng setVariables bạn cũng có thể vượt qua các biến của bạn trực tiếp khi instantiating ViewModel như thế này:

$result = new ViewModel(array('items' => $items)); 
Các vấn đề liên quan