首頁 > 後端開發 > php教程 > Magento的執行流程?

Magento的執行流程?

WBOY
發布: 2016-07-29 09:05:07
原創
948 人瀏覽過

Magento的執行流程,一張圖就可完全說明。

Magento的執行流程?
magento也是mvc模式的程序,但是與普通的mvc結構又有所差異。
我們透過它的一個註冊來看他的程式執行流程:
首先,我們在網址列輸入http://localhost/magento/index.php/customer/account/create/來進入註冊的頁面。
step 1:程式拿到url中的customer會自動定位到模組app/code/core/Mage/Customer
step 2:然後程式得到account會自動定位到控制器檔案app/code/core/Mage/Customer/ controllers/AccountController.php
step 3:程式得到create,則會在剛剛找到的控制器檔案中createAction()方法。

<code>public function createAction(){
    if ($this->_getSession()->isLoggedIn()) {
    $this->_redirect('*/*');
    return;
    }
    $this->loadLayout();
    $this->_initLayoutMessages('customer/session');
    $this->renderLayout();
}</code>
登入後複製

step 4:執行程式裝載目錄 app/design/frontend/base/default/layout/下的customer.xml。然後尋找名為的標籤

<code><customer_account_create translate="label">
<label>Customer Account Registration Form</label>
<!-- Mage_Customer -->
<remove name="right"/>
<remove name="left"/>
 
<reference name="root">
<action method="setTemplate"><template>page/1column.phtml</template></action>
</reference>
<reference name="content">
<block type="customer/form_register" name="customer_form_register" template="customer/form/register.phtml">
<block type="page/html_wrapper" name="customer.form.register.fields.before" as="form_fields_before" translate="label">
<label>Form Fields Before</label>
</block>
</block>
</reference>
</customer_account_create></code>
登入後複製

step 5:在customer.xml中定義了要使用的block和template,相對應的檔案目錄分別為:appcodecoreMageCustomerBlockFormRegister.php 和appdesignfrontendbasedefaultaultlatec使用$this來存取類別的方法。
所以,magento的程式執行流程可以歸納為這樣:
獲得執行控制器->執行方法中處理業務邏輯和模型資料->控制器實例化佈局物件->佈局物件根據請求實例化block->block與template一一對應完成顯示邏輯。

以上就介紹了Magento的執行流程?,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板