محمد شرف

Zend Framework 2: إعادة استجابة من دون View أو Layout

طريقتان لتخطي العرض في Controller بـ ZF2: إعادة الاستجابة مباشرة، أو العرض من دون القالب العام.

· 1 دقائق قراءة

من الأرشيف: نُشر أصلًا على mohamedsharaf.net في أكتوبر 2012. أُعيدت كتابته ومراجعته في 2026، وبعض التفاصيل قد تكون قديمة.

أحيانًا لا يجب أن يعرض الـ Action أي قالب، مثلًا عندما يعيد ملفًا أو إعادة توجيه أو JSON خام. في Zend Framework 2 أمامك خياران:

تخطي العرض بالكامل

public function exportAction()
{
    $response = $this->getResponse();
    $response->setContent($csv);
    return $response;   // returning the Response object skips rendering
}

عرض الـ View لكن من دون الـ Layout

public function partialAction()
{
    $view = new ViewModel(['items' => $items]);
    $view->setTerminal(true);   // no layout around it
    return $view;
}

اليوم: يستمر Zend Framework 2 باسم Laminas MVC، والطريقتان تعملان بالأسلوب نفسه. وللـ JSON يكون JsonModel أنظف غالبًا.

شاركWhatsAppLinkedInXTelegramFacebook