欧美日韩不卡一区二区三区,www.蜜臀.com,高清国产一区二区三区四区五区,欧美日韩三级视频,欧美性综合,精品国产91久久久久久,99a精品视频在线观看

php語言

PHP 5.3 安裝分析心得

時間:2024-12-29 20:48:47 php語言 我要投稿
  • 相關(guān)推薦

PHP 5.3 安裝分析心得

  滿腔熱血怎么能被安裝毀了呢?以下是百分網(wǎng)小編精心為大家整理的PHP 5.3.0 安裝分析心得,希望對大家安裝PHP有所幫助!更多內(nèi)容請關(guān)注應(yīng)屆畢業(yè)生網(wǎng)!

PHP 5.3 安裝分析心得

  話說,一直犯懶沒下載一個PHP 5.3,今天看到關(guān)于PHP5.3.0一時興起打算更新一下本本上的PHP,于是乎下載了5.3來裝。整個過程,可以這么說,驚異大于驚喜。并且我感受到了我第一次在Windows配置PHP時的那種脆弱無知感覺……

  首先。。。PHP Team首次分離出了一個Windows團隊。Windows的下載也挪到了windows.php.net。一個大進步。

  其次。。。最大的驚異,PHP 5.3開始,居然沒有了ISAPI支持……可以參看這里:ISAPI support, do we need it?

  從沒見PHP Team動作這么迅速。PHP 4停止支持還有一年的過渡期,ISAPI說沒就沒了……嗯,這個策略我支持,既然Microsoft發(fā)了IIS FastCGI支持,那停止就停止了吧。。。畢竟從穩(wěn)定性上來說,F(xiàn)astCGI還是比ISAPI要好的……只是這么大的事兒,我居然不知道……真是孤陋寡聞了。在IIS下使用FastCGI設(shè)置PHP的介紹可以看這里。

  再者。。。剛裝上啥都沒干,PEAR報錯不能用-。-|||

  好吧,不是我的錯。關(guān)于這個錯誤,解釋是這樣的:

  Some users have reported that the windows builds of PHP 5.3 are not able to open the shipped go-pear.phar file.

  As a workaround, users can run the distributed phar with php -d phar.require_hash=0 go-pear.phar or download and use the http://pear.php.net/go-pear non-pharred version.

  總結(jié)一下我的感受吧……

  1. IIS 5.1、6.0、7,請先安裝Microsoft FastCGI;

  2. 沒有了ISAPI支持之后,對于PHP 5.3來說,Installer和zip沒有什么太大差別了;相比來說,個人覺得installer版本東西少(庫沒少帶,還沒有那個煩人的phar版PEAR),更清爽;

  3. 安裝完成后要改php.ini中的date.timezone設(shè)置,否則IIS會給你報個500錯誤……

  4. 如果裝的是installer版本并且還需要PEAR,那就這么做:1. 把http://pear.php.net/go-pear下載下來;2. php go-pear.

  如果裝的是zip版本,請執(zhí)行php -d phar.require_hash=0 go-pear.phar,或者按照上邊installer的方法裝非phar版本的PEAR。

  【拓展閱讀】 異常在 PHP 5.3 中的最佳實踐

  每一個新的功能添加到PHP運行時會創(chuàng)建一個指數(shù)隨機數(shù),通過這樣的方式開發(fā)者可以使用和甚至濫用這個新特性。然而,直到一些好的和壞的使用情況陸續(xù)出現(xiàn)開發(fā)者們才達(dá)成了共識。當(dāng)這些新案例不斷浮現(xiàn),我們終于可以辨別出什么是最好或最壞的做法。

  異常處理在PHP中的確無論如何都不算是一個新的特征。但在本文中,我們將討論在PHP 5.3中基于異常處理的兩個新的特點。第一個是嵌套異常第二是一套SPL(現(xiàn)在的PHP運行機制的一個核心擴展)的擴展的新的異常類型。這兩個新特性,這本書里都能找到最佳實踐值得各位去詳細(xì)研究。

  特別要注意:這些特性中的一些已經(jīng)存在于低于5.3的PHP版本之中,或者至少能夠在低于5.3的版本之中被實現(xiàn). 而當(dāng)本文提到 PHP 5.3, 并不是嚴(yán)責(zé)意義上的 PHP 運行時版本. 相反,它意味著代碼庫和項目是采用 PHP 5.3 作為最低版本的,但同時也是在新的發(fā)展階段出現(xiàn)的所有最佳實踐. 這個發(fā)展階段所凸顯的是特定的幾個像Zend Framework, Symfony, Doctrine 以及 PEAR 這樣的項目所進行的“2.0”嘗試.

  背景

  PHP 5.2 只有一個異常類 Exception。按照 Zend Framework / PEAR 的開發(fā)標(biāo)準(zhǔn), 這個類是你的庫中所有異常類的基類。如果你創(chuàng)建一個名叫 MyCompany 的庫,按 Zend Framework / PEAR 的標(biāo)準(zhǔn), 庫中所有的代碼文件都會以 MyCompany_ 開頭。要是你想給庫創(chuàng)建自己的異常基類: MyCompany_Exception, 那就用該類繼承 Exception,然后再由組件(component )繼承和拋出該異常類。比如你有一個組件 MyCompany_Foo,你可以給它創(chuàng)建一個用在該組件內(nèi)部的異; MyCompany_Foo_Exception。這些異常能被捕捉 MyCompany_Foo_Exception,MyCompany_Exception 或 Exception 的代碼捉到。 對于庫中其他用到該組件的代碼來說,這是個三層的異常(或更多,取決于 MyCompany_Foo_Exception 的子類有幾層 ), 他們可以根據(jù)自己的需要處理這些異常。

  在php5中,基本異常類已經(jīng)支持嵌套的特性了。什么是嵌套呢?嵌套是一種能力可以去捕獲特殊異常,或者捕獲參照原始異常而創(chuàng)建的一個新的異常對象。這將會允許caller屬性在更公開的類型的開銷庫中出現(xiàn)的兩種異常類上得到體現(xiàn),當(dāng)然也會在具有原始異常行為的異常類上體現(xiàn)。

  為什么這些特性很有用?通常,通過使用其他代碼來拋出自己的類型的異常是最有效的代碼。這些代碼可能是使用適配器模式封裝的提供一些適應(yīng)性更強強的函數(shù)的第三方代碼庫的代碼,或利用一些PHP擴展來拋出異常的簡單代碼。

  例如,在組件 Zend_Db 中, 它使用了適配器模式來封裝特定的 PHP 擴展,來創(chuàng)建一個數(shù)據(jù)庫抽象層. 在一個適配器中, Zend_Db 封裝了 PDO, 而 PDO 會拋出它自己的異常 PDOException, Zend_Db 需要捕獲這些特定于 PDO 的異常,并讓它們以可預(yù)期且類型已知的 Zend_Db_Exception 重新被拋出. 這樣就給了開發(fā)者保證, Zend_Db 將總是拋出 Zend_Db_Exception 類型的異常(因此可以被捕獲), 而他們同時也可以在需要的時候訪問到最開始被拋出的 PDOException.

【PHP 5.3 安裝分析心得】相關(guān)文章:

php5.3注意事項說明06-16

php5.3環(huán)境簡單配置02-26

PHP的安裝方法03-03

PHP安裝與配置03-28

PHP如何安裝04-10

PHP的安裝步驟05-08

PHP的安裝方法及軟件05-22

PHP遞歸效率分析03-09

PHP 死鎖問題分析05-19