PHP發(fā)展歷程(中)._第1頁(yè)
PHP發(fā)展歷程(中)._第2頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、才智尚招聘網(wǎng)PHP 發(fā)展歷程(中)PHP 是現(xiàn)在主流的開(kāi)發(fā)語(yǔ)言,那讓我們來(lái)看看PHP 的發(fā)展歷程,我會(huì)分上下兩部分來(lái)為大家介紹 PHP 的發(fā)展歷程3、名稱空間(Namespace)名稱空間對(duì)類(lèi)的分組或函數(shù)分組很有用。它可以把一些相關(guān)的類(lèi)或函數(shù)給組合到一起,方便以后調(diào)用。 例:名稱空間 注意你需要在何種 情況下使用名稱空間,在實(shí)際運(yùn)用中,你可能會(huì)需要聲明兩個(gè)或多個(gè)名稱一樣的 對(duì)象來(lái)做不同的事情,那么你就可以把他們分別放到不同的名稱空間中去(但接 口是要相同的)。編輯本段 PHP6 設(shè)想1. 支持 Uni code支持 Un icode 是有其必然,雖然 Uni code 占用較多的空間,但 Un

2、 icode 帶來(lái)的便 利性,遠(yuǎn)超過(guò)占用空間的缺點(diǎn),尤其在國(guó)際化的今天,硬件設(shè)備越來(lái)越強(qiáng)大,網(wǎng) 速也大幅度的提升,這么一點(diǎn)小小的缺點(diǎn)是可以忽略的。另外一點(diǎn),PHP 也可以在.ini 文件中設(shè)定是否開(kāi)啟支持 Uni code,決定權(quán)在你自己,這是一個(gè)不錯(cuò)的點(diǎn) 子,關(guān)掉 Unicode 的支持,PHP 的性能并不會(huì)有大幅度的提升,主要的影響在于 需要引用字符串的函數(shù)。.2. Register Globals 將被移除這是一個(gè)重要的決定,說(shuō)多新進(jìn)的PHP 開(kāi)發(fā)者會(huì)覺(jué)得 RegisterGlobals 滿方便的,但是卻忽略了 RegisterGlobals 會(huì)帶來(lái)程序上安全性的隱患,大多數(shù)的主機(jī)上此項(xiàng)

3、 功能是關(guān)閉的,印象 PHP4.3.X 版開(kāi)始時(shí),此項(xiàng)默認(rèn)設(shè)置值即是關(guān)閉狀態(tài),PHP6正式移除 RegisterGlobals 也代表著如果程序是由 PHP3 時(shí)代的產(chǎn)物,將完全無(wú)法 使用,除了改寫(xiě)一途外,別無(wú)他法。相信現(xiàn)在的PHP 世界里,仍使用 PHP3 時(shí)代所產(chǎn)生的程序應(yīng)該是少之又少。3. Magic Quotes 將消失Magic Quotes 主要是自動(dòng)轉(zhuǎn)義需要轉(zhuǎn)義的字符,此項(xiàng)功能移除也符合大多數(shù)PHP開(kāi)發(fā)者的心聲。4.Safe Mode 取消老實(shí)說(shuō),這個(gè)模式不知道哪里不好,取消就取 消吧,反正也用不到5. var別名為public在類(lèi)中的 var 聲明變成 public 的別名,相

4、信是為了兼容 PHP5 而作的決定,PHP6 現(xiàn)在也可以稱作為 00 語(yǔ)言了。6. 通過(guò)引用返回將出錯(cuò)現(xiàn)在透過(guò)引用返回編譯器將會(huì)報(bào)錯(cuò) 例如$a =& new b()、function &c() , 00 語(yǔ)言默 認(rèn)就是引用,所以不需要再使用&了。7. ze nd.zel compatbility mode 將被移去Zend.ze1 相容模式將被移去,PHP5 是為兼容舊有 PHP4,所以在.ini 中可選擇是 否開(kāi)啟相容模式,原因在于 PHP5 使用的是第二代解析引擎,但是相容模式并不 是百分之百能解析 PHP4 語(yǔ)法,所以舊時(shí)代的產(chǎn)物,移除。8. Freetype 1 and GD 1 su

5、pport不見(jiàn)這兩個(gè)是很久的 Libs,所以不再支持,GD1 早已被現(xiàn)在的 GD2 取代了。9. dl()被移到 SAPI 中dl()主要是讓設(shè)計(jì)師加載 extension Libs,現(xiàn)在被移到 SAPI 中10. Register Long Array 去除從 PHP5 起默認(rèn)是關(guān)閉,再 PHP6 中正式移除。11. 一些 Extension 的變更例如 XMLReader 和 XMLWriter 將不再是以 Extension 的方式出現(xiàn),他們將被移入 到PHP 的核心之中,并且默認(rèn)是開(kāi)啟,eregextension 將被放入 PECL,代表著它 將被移出 PHP 核心,這也為了讓路給新的

6、正則表達(dá)式 extension,此外,F(xiàn)ileinfoextension 也將被導(dǎo)入 PHP 的核心之中。12. APC 將被導(dǎo)入核心這是一個(gè)提高 PHP 性能的功能,現(xiàn)在它將被放入 PHP 核心中,并且可以選擇是 否啟用 APC13. 告別 ASP 風(fēng)格的起始標(biāo)簽才智尚招聘網(wǎng)原來(lái)是為了取悅 ASP 開(kāi)發(fā)者轉(zhuǎn)向使用 PHP,現(xiàn)今已經(jīng)不再需要這 種做法了編輯本段安裝由于 php 是一個(gè) zip 文件(非 in stall 版),安裝較為簡(jiǎn)單 解壓就行.把解壓的 php-5.2.1-Win32 重命名為 php5 并復(fù)制到 C 盤(pán)目錄下.即安裝路徑為 c:php 1 找到 php 目錄 下的php

7、.ini.recommended 或者 php.ini-dist)文件,重命名為 php.ini 并復(fù)制到系統(tǒng)盤(pán) 的windows 目錄下(以 c:windows 為例).2 再把 php 目錄下的 php5ts.dll,libmysql.dll 復(fù)制到目錄 c:windowssystem32 下.3 把 phpext 目錄下的php_gd2.dll,php_mysql.dll,php_mbstring.dll 文件復(fù)制至 U c:windowssystem32 下 注意:不要把 php_mysql.dll 和 php_mssql.dll 混淆如果沒(méi)有加載 php_gd2.dll php 將不

8、能處理 圖像.沒(méi)有加載 php_mysql.dll php 將不支持 mysql 函數(shù)庫(kù) php_mbstring.dll 在后面 使用phpmyadmin 時(shí)支持寬字符 配置 php 并關(guān)聯(lián) MySQL 1 設(shè)置擴(kuò)展路徑查找 extension_dir 有這么一行 extension_dir = ./將此行改成 extension_dir =C:phpext其中 C:php 是你安裝 php 的路徑.路徑不正確將無(wú)法加載 dll (注意:有 些php 版本是;extension_dir = ./要把前面的分號(hào)去掉)2 分別查 找;extension=php_mbstri ng.dll ;ex

9、te nsion=php_gd2.dll ;exte nsion=php_mysql.dll 把 上面 3項(xiàng)前面的分號(hào)去掉,這樣 apache 啟動(dòng)時(shí)就可以加載這些 dll 了注意不要把;extension=php_mysql.dl 和;extension=php_mssql.dI 混淆 當(dāng)然前面我們也把這 些dll 復(fù)制到 system32 下了 .(大家在安裝的過(guò)程中都注意到如何把一些dll 加載入來(lái)了.以后要加載一些 dll,比如說(shuō) php_mysqli.dll,也就懂得怎么加載了)3 設(shè)置會(huì)話 保存路徑 查找 session.save_patl 有這么一行;session.save_p

10、ath = N;/path在此行 后加入一行(注意是加入一行,不是加到后面)session.save_path = C:WINDOWSTemp保存到你的臨時(shí)目錄下,這里完全可以保存到 windows 臨時(shí) 目錄 Temp 下 4 是否顯示錯(cuò)誤 display_errors 出于安全性考 慮,display_errors 有些版本也默認(rèn)為 Off.就是說(shuō)在調(diào)試時(shí),如果 php 代碼有誤,就只 出現(xiàn)一個(gè)空白頁(yè).而不會(huì)顯示出錯(cuò)原因和出錯(cuò)行數(shù).這樣調(diào)試起來(lái)將非常不便,建議 根據(jù)自己需要修改 查找 display_errors = Off (注意不是;-display_errors = Off Secu

11、rity)改成 display_errors = On 5 php5 時(shí)差問(wèn)題 時(shí)間相差八小時(shí) 為什么呢?PHP5 系列版本新增了時(shí)區(qū)設(shè)置,默認(rèn)為格林 威治時(shí)間,與中國(guó)所在的東 8 區(qū)正好相差 8 個(gè)小時(shí)查找date.timezone 有這么一行 ;date.timezone =將;去掉,改成 date.timezone = PRC 其中PRC: Peoples Republic of China 中華人民共和國(guó),PHP 的文件上傳問(wèn)題 文件上傳 成敗關(guān)鍵的幾點(diǎn) php.ini 配置文件上傳的程序沒(méi)有錯(cuò),但 php 的配置很可能導(dǎo)致文 件不能上傳成功.1. 一般的文件上傳,除非文件很小.就像一

12、個(gè) 5M 的文件,很可能要 超過(guò)一分鐘才能上傳完.但在 php 中,默認(rèn)的該頁(yè)最久執(zhí)行時(shí)間為 30 秒.就是說(shuō)超 過(guò) 30 秒,該腳本就停止執(zhí)行.這就導(dǎo)致出現(xiàn) 無(wú)法打開(kāi)網(wǎng)頁(yè)的情況.這時(shí)我們可以修 改max_execution_time 在 php.ini 里查找 max_execution_time 默認(rèn)是 30 秒.改 為max_execution_time = 0 0 表示沒(méi)有限制 另一種方法是可以在 php 程序中加入set_time_limit();來(lái)設(shè)定頁(yè)面最久執(zhí)行時(shí)間.set_time_limit(O);/O 表示沒(méi)有限制 2.修 改 post_max_size 設(shè)定 POST 數(shù)據(jù)所允許的最大大小。此設(shè)定也影響到文件上 傳。php默認(rèn)的post_max_size為2M.如果POST數(shù)據(jù)尺寸大于post_max_size $_POST 和$_FILESsuperglobals 便會(huì)為空.查找 post_max_size 改為 post_max_size = 150M 3.很多人 都會(huì)改了第二步.但上傳文件時(shí)最大仍然為 8M.為什么呢.我們還要改一個(gè)參數(shù)upload_max_filesize 表示所上傳的文件的最大大

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論