Zend Framework 入門(1)—快速上手
May 19, 2016 pm 02:05 PM1. 安裝
從 Zend Framework 的網(wǎng)頁(yè)上下載最新版本。解壓后,把整個(gè)目錄拷貝到一個(gè)理想的地方,比如:/php/library/Zend。
打開 php.ini 文件,確認(rèn)包含 Zend 目錄的路徑在 include_path 里定義了。以上面的配置為例,php.ini 中應(yīng)有類似下面的條目:
include_path = ".:/php/library"
注意:Windows 下的寫法略有不同,應(yīng)該類似于 include_path = ".;C:\php\library"
初始的安裝就這么簡(jiǎn)單。Zend Framework 的一些組件會(huì)用到 php 的一些附加模塊。具體的要求請(qǐng)參考這里。
2. 項(xiàng)目的目錄結(jié)構(gòu)
如果你的項(xiàng)目不包含多個(gè)模塊,可以用下面的目錄結(jié)構(gòu):
application/controllers/IndexController.phpmodels/views/scripts/index/index.phtmlhelpers/filters/html/.htaccessindex.php如果你的項(xiàng)目要包含多個(gè)模塊(比如:博客,社區(qū),等等),那么建議使用模塊化的目錄結(jié)構(gòu)。
3. 網(wǎng)頁(yè)的根目錄
網(wǎng)頁(yè)的根目錄應(yīng)指向上述目錄結(jié)構(gòu)中的 html 文件夾。
4. 重寫規(guī)則
編輯 html/.htaccess 文件,加入下面兩行:
RewriteEngine onRewriteRule !\.(js|ico|gif|jpg|png|CSS)$ index.php注意:上述是針對(duì) apache 的配置。如果是其他的服務(wù)器,請(qǐng)參考這里。
5. 引導(dǎo)程序
編輯 html/index.php 文件,敲入下面代碼:
Zend Framework 的默認(rèn)路由規(guī)則是 http://域名/控制器名/動(dòng)作(方法)名。例如:
http://example.com/user/show 會(huì)被解析到名為 User 的控制器以及該控制器中定義的 show 方法。如果該方法沒有定義,則默認(rèn)轉(zhuǎn)到 index 方法。
注意:在代碼中,控制器名的后面要加上 Controller,而動(dòng)作名的后面要加上 Action。
編輯 application/controllers/IndexController.php 文件,輸入:
/** Zend_Controller_Action */
require_once'Zend/Controller/Action.php';
classIndexControllerextendsZend_Controller_Action
{
? public functionindexAction()
? {
? }
}
7. 視圖(頁(yè)面)腳本
編輯 application/views/scripts/index/index.phtml,輸入:
-//W3C//DTD XHTML 1.0 Strict//EN""
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">Hello, World!
8. 錯(cuò)誤控制器默認(rèn)情況下,Zend Framework 的錯(cuò)誤處理插件是被注冊(cè)的。它需要一個(gè)錯(cuò)誤控制器來(lái)處理錯(cuò)誤。缺省的錯(cuò)誤控制處理被假定為 ErrorController 以及其中定義的 errorAction。
編輯 application/controllers/ErrorController.php,輸入:
/** Zend_Controller_Action */
require_once'Zend/Controller/Action.php';
classErrorControllerextendsZend_Controller_Action
{
? public functionerrorAction()
? {
? }
}
下面是對(duì)應(yīng)的視圖腳本。編輯 application/views/scripts/error/error.phtml,輸入:
-//W3C//DTD XHTML 1.0 Strict//EN""
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">An error occurred
An error occurred; please try again later.
9. 運(yùn)行好,現(xiàn)在運(yùn)行網(wǎng)站。在瀏覽器中鍵入下面三個(gè)地址,得到的結(jié)果應(yīng)該是一樣的——就是最最常見的“Hello, World!“。
http://域名
http://域名/index
http://域名/index/index
如果是這樣,那么恭喜你!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Common problems and solutions for PHP variable scope include: 1. The global variable cannot be accessed within the function, and it needs to be passed in using the global keyword or parameter; 2. The static variable is declared with static, and it is only initialized once and the value is maintained between multiple calls; 3. Hyperglobal variables such as $_GET and $_POST can be used directly in any scope, but you need to pay attention to safe filtering; 4. Anonymous functions need to introduce parent scope variables through the use keyword, and when modifying external variables, you need to pass a reference. Mastering these rules can help avoid errors and improve code stability.

To safely handle PHP file uploads, you need to verify the source and type, control the file name and path, set server restrictions, and process media files twice. 1. Verify the upload source to prevent CSRF through token and detect the real MIME type through finfo_file using whitelist control; 2. Rename the file to a random string and determine the extension to store it in a non-Web directory according to the detection type; 3. PHP configuration limits the upload size and temporary directory Nginx/Apache prohibits access to the upload directory; 4. The GD library resaves the pictures to clear potential malicious data.

There are three common methods for PHP comment code: 1. Use // or # to block one line of code, and it is recommended to use //; 2. Use /.../ to wrap code blocks with multiple lines, which cannot be nested but can be crossed; 3. Combination skills comments such as using /if(){}/ to control logic blocks, or to improve efficiency with editor shortcut keys, you should pay attention to closing symbols and avoid nesting when using them.

AgeneratorinPHPisamemory-efficientwaytoiterateoverlargedatasetsbyyieldingvaluesoneatatimeinsteadofreturningthemallatonce.1.Generatorsusetheyieldkeywordtoproducevaluesondemand,reducingmemoryusage.2.Theyareusefulforhandlingbigloops,readinglargefiles,or

The key to writing PHP comments is to clarify the purpose and specifications. Comments should explain "why" rather than "what was done", avoiding redundancy or too simplicity. 1. Use a unified format, such as docblock (/*/) for class and method descriptions to improve readability and tool compatibility; 2. Emphasize the reasons behind the logic, such as why JS jumps need to be output manually; 3. Add an overview description before complex code, describe the process in steps, and help understand the overall idea; 4. Use TODO and FIXME rationally to mark to-do items and problems to facilitate subsequent tracking and collaboration. Good annotations can reduce communication costs and improve code maintenance efficiency.

ToinstallPHPquickly,useXAMPPonWindowsorHomebrewonmacOS.1.OnWindows,downloadandinstallXAMPP,selectcomponents,startApache,andplacefilesinhtdocs.2.Alternatively,manuallyinstallPHPfromphp.netandsetupaserverlikeApache.3.OnmacOS,installHomebrew,thenrun'bre

In PHP, you can use square brackets or curly braces to obtain string specific index characters, but square brackets are recommended; the index starts from 0, and the access outside the range returns a null value and cannot be assigned a value; mb_substr is required to handle multi-byte characters. For example: $str="hello";echo$str[0]; output h; and Chinese characters such as mb_substr($str,1,1) need to obtain the correct result; in actual applications, the length of the string should be checked before looping, dynamic strings need to be verified for validity, and multilingual projects recommend using multi-byte security functions uniformly.

TolearnPHPeffectively,startbysettingupalocalserverenvironmentusingtoolslikeXAMPPandacodeeditorlikeVSCode.1)InstallXAMPPforApache,MySQL,andPHP.2)Useacodeeditorforsyntaxsupport.3)TestyoursetupwithasimplePHPfile.Next,learnPHPbasicsincludingvariables,ech
