導航:首頁 > 編程語言 > 細說php第三版

細說php第三版

發布時間:2024-10-23 02:51:31

『壹』 自學計算機編程應該看些什麼書

一:第一階段
C語言-------《C語言設計》 作者:譚浩強
大多數人都推薦譚浩強這本書,譚浩強的C語言程序設計,我覺得更適合當教科書,主要是篇幅沒有那麼大,書本的內容不是很全,由老師帶入門是最好的。

《C Primer Plus》第五版 作者:Stephen Prata
這本書比較厚,內容也比較基礎,擴展的也比較廣,自學容易上手,唯一的缺陷在於它是外國人編寫,而國內的翻譯往往讓人難以滿意,如果你有較好的英語水平,最好閱讀英文版的。

《C語言入門經典》第四版 作者:Ivor Horton

二:第二階段
這一階段看個人主攻的方向了,安卓一般就java,PC游戲、軟體C++,也有推薦C#,這些都是主流語言,其他語言要看個人愛好與發展。
面向對象的語言,一般懂一門,之後要轉其他語言也很容易的,其實思想都差不多,主要的不同在於語法。C#容易上手,一個月入門,一年精通,而C++卻有點難,一年入門,二十年也未必敢說自己精通。如果有時間,可以了解一下匯編語言。

C++ Primer, 4rd Edition

(入門類:
C++ Primer, 4rd Edition
Thinking in C++, 2nd Edition
The C++ Standard Library: A Tutorial and Reference

進階類:
The C++ Programming Language, Special Edition
The Design and Evolution of C++
Inside C++ Object Model
C++ Templates: The Complete Guide
STL 源碼剖析
Generic Programming and the STL
Modern C++ Design: Generic Programming and Design Patterns Applied

應用技巧類:
Effective C++, 2nd Editon
More Effective C++
Exceptional C++
More Exceptional C++
Effective STL
Ruminations on C++)

三:第三階段
API/SDK------------- 《windows程序設計》(Jeff Prosise)
這書主要是開發Windows軟體要深入研讀的,畢竟是WindowsAPI。如果是主攻C++,那麼這本書你可以大概略讀一遍,不用過多的深入追究,QT才是C++主要深入思慮的關鍵。

四:第四階段
MFC----《VC++技術內幕》、《深入淺出MFC》及視頻教程孫鑫 VC++6.0
如果是C++,QT是要重點學習的對象。

五:第五階段
COM/DCOM/ATL/COM+---------《COM技術內幕》

未知階段:
《數據結構》,《演算法導論》這些基本是編程的核心了,編程的很大情況都依賴於演算法的實現,這個兩門基本要深入研究,這是決定編程能力的核心標准。

如果不弄底層的話,《操作系統原理》可以簡單地了解。

『貳』 APS,php都是什麼意思

APS技術的組成

ASP硬碟保護技術,是由內嵌於主板上的加速度感應晶元和預裝在系統中的震動預測管理軟體組成。通過對ThinkPad本本的角度、震動、撞擊的監測(即對橫縱加速度變化的監測),來決定是否將硬碟磁頭從工作狀態收回到磁頭停止區,從而減小撞擊對硬碟的損害,保護硬碟及硬碟內的數據。震動預測管理軟體從加速感應晶元中接收到相應的信號,通過分析判斷出哪些是對硬碟有害的,哪些是規律性的運動。震動預測管理軟體會忽略對硬碟不能造成傷害的規律性運動,而對於可能會對硬碟造成損害的運動,震動預測管理軟體會立刻將信息傳遞給硬碟,使磁頭迅速收回到停止區。當本本處於關機狀態或系統處於啟動狀態時,APS功能並不會被啟動。

APS技術的工作原理

當筆記本電腦硬碟工作時,硬碟磁頭在磁碟上方運動,進行數據讀取,當撞擊力在持續2毫秒內小於200G時,一般可以靠ThinkPad本本本身的外殼與防震設計來減震,避免對硬碟造成損害。而當撞擊力在持續2毫秒內超過200G後,損害將會隨著撞擊能量的加大而加大。

硬碟處於非工作狀態時,磁頭處於停止區,硬碟在1毫秒內最大可以承受800G的沖擊。當撞擊超過800G/1毫秒後,損害將會隨著撞擊能量的加大而加大(見圖右邊的函數圖)。也就是說如果可以及時將硬碟磁頭歸位到停止區,則硬碟可以忍受比在工作狀態下更大的沖擊而不受損害。IBM APS技術就是基於上述原理,在預測到有可能發生撞擊後,及時地將磁頭移動到停止區以保護硬碟。

根據大量實際調查顯示,筆記本電腦在工作狀態下跌落的情況絕大部分是從桌面或膝蓋上跌落,即從120cm以下高度跌落(通常人的膝蓋高度為50cm,桌面高度為80cm),如何能在ThinkPad本本發生撞擊之前就將磁頭歸位,成為了問題的關鍵所在。

1.磁頭歸位的時間問題

經測試,磁頭的歸位時間從接到控制信號到完成操作,根據磁頭所處的磁軌位置不同,大約為100毫秒到500毫秒。對於20cm高度內自由下落的情況,一般可以靠筆記本電腦的外殼與防震設計抵禦撞擊力,所以我們僅需要關注20cm以上的跌落情況。而筆記本電腦從20cm至120cm高度掉落下來的時間是202毫秒至495毫秒,再加上筆記本電腦掉落之前的短暫延遲時間,試驗表明通常預計發生的時間會多於下跌時間。這就保證磁頭能在筆記本電腦發生撞擊之前及時歸位,有效地保護磁碟。

2.沖擊力問題

筆記本電腦要承受怎樣的撞擊,硬碟才會受到超過800G的沖擊力呢?我們知道,硬碟受到的沖擊力是由多項因素決定的。首先是筆記本電腦下落的相對高度與初始速率,而一般筆記本電腦在工作狀態下跌落的情況絕大部分是從膝蓋或桌面上跌落到地板上,相對高度不超過120cm,垂直方向的初始速率基本可以忽略不計;其次是筆記本電腦撞擊的表面,硬質無彈性的表面(如水泥地板)可以造成更大的沖擊力,軟質有彈性的表面(如木地板或鋪著地毯的地板)可以略微緩沖碰撞,從而造成較小的沖擊;再次是筆記本電腦本身的外殼設計和防震設計。

為了量化在各種情況下硬碟受到的沖擊力,IBM實驗室特別針對從膝蓋上跌落和從桌面上跌落兩種情景進行了大量的實際測試。相關實驗數據顯示,從膝蓋高度(50cm)或從桌面高度(80cm)翻落到硬質無彈性的水泥地板上,由於有外殼以及沖擊吸收墊保護,硬碟受到的沖擊力超過200G的幾率約為50%,而超過800G的幾率不超過2%。

3.規律性顛簸問題

APS功能一旦開啟,就一直在監測ThinkPad本本的運動。但用戶常常需要移動辦公,如在汽車、火車或飛機等交通工具上使用筆記本電腦,因此顛簸是在所難免的,這些震動要是常觸發APS使磁頭歸位,則ThinkPad用戶在使用本本時就會感到本本運行是斷斷續續的,影響了工作效率。不過APS技術已經考慮到這個問題,它具有忽略重復震動的功能,能消除移動用戶的顧慮。交通工具顛簸造成的沖擊力一般並不足以損害硬碟,所以大多數的顛簸都不會觸發APS功能使磁頭歸位,從而有效保證了ThinkPad用戶使用筆記本電腦的流暢性。

智能化的震動預測、有提前量的磁頭歸位操作,APS的這些重要特性都保證了ThinkPad本本的硬碟以及盤內數據不會輕易受到各種撞擊的影響。

php
PHP,一個嵌套的縮寫名稱,是英文超級文本預處理語言(PHP:Hypertext Preprocessor)的縮寫。PHP 是一種 HTML 內嵌式的語言,PHP與微軟的ASP頗有幾分相似,都是一種在伺服器端執行的嵌入HTML文檔的腳本語言,語言的風格有類似於C語言,現在被很多的網站編程人員廣泛的運用。PHP 獨特的語法混合了 C、Java、Perl 以及 PHP 自創新的語法。它可以比 CGI 或者 Perl 更快速的執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多;與同樣是嵌入HTML文檔的腳本語言JavaScript相比,PHP在伺服器端執行,成分利用了伺服器的性能;PHP執行引擎還會將用戶經常訪問的PHP程序駐留在內存中,其他用戶在一次訪問這個程序時就不需要誠信編譯程序了,只要直接執行內存中的代碼就可以了,這也是PHP高效率的體現之一。PHP具有非常強大的功能,所有的CGI或者JavaScript的功能PHP都能實現,而且支持幾乎所有流行的資料庫以及操作系統。

PHP 最初是1994年Rasmus Lerdorf創建的,剛剛開始只是一個簡單的用Perl語言編寫的程序,用來統計他自己網站的訪問者。後來又用C語言重新編寫,包括可以訪問資料庫。在1995年以Personal Home Page Tools (PHP Tools) 開始對外發表第一個版本,Lerdorf寫了一些介紹此程序的文檔,並且發布了PHP1.0。在這早期的版本中,提供了訪客留言本、訪客計數器等簡單的功能。以後越來越多的網站使用了PHP,並且強烈要且增加一些特性,比如循環語句和數組變數等等,在新的成員加入開發行列之後,在1995年中,PHP2.0發布了。第二版定名為PHP/FI(Form Interpreter)。PHP/FI加入了對mSQL的支持,從此建立了PHP在動態網頁開發上的地位。到了1996年底,有15000個網站使用 PHP/FI;時間到了1997年中,使用PHP/FI的網站數字超過五萬個。而在1997年中,開始了第三版的開發計劃,開發小組加入了 Zeev Suraski 及 Andi Gutmans,而第三版就定名為PHP3。2000年,PHP4.0又問世了,其中增加了許多新的特性。

PHP的特性包括:

開放的源代碼:所有的PHP源代碼事實上都可以得到。

PHP是免費的。

基於伺服器端:由於PHP是運行在伺服器端的腳本,可以運行在UNIX、LINUX、WINDOWS下。

嵌入HTML:因為PHP可以嵌入HTML語言,所以學習起來並不困難。

簡單的語言:PHP堅持腳本語言為主,與Java以C++不同。

效率高:PHP消耗相當少的系統資源。

圖像處理:用PHP動態創建圖像

PHP 3與PHP 4的比較

PHP3跟Apache伺服器緊密結合的特性;加上它不斷的更新及加入新的功能;而且幾乎支持所有主流與非主流資料庫;再以它能高速的執行效率,使得PHP在1999年中的使用站點已經超過了150000萬。加上它的源代碼完全公開,在 Open Source意識抬頭的今天,它更是這方面的中流砥柱。不斷地有新的函數庫加入,以及不停地更新的活力,使得PHP無論在UNIX、LINUX或是Windows的平台上都可以有更多新的功能。它提供豐富的函數,使得在程序設計方面有著更好的支持。

PHP4.0整個腳本程序的核心大幅更動,讓程序的執行速度,滿足更快的要求。在最佳化之後的效率,已較傳統CGI或者ASP等程序有更好的表現。而且還有更強的新功能、更豐富的函數庫。無論您接不接受,PHP 都將在 Web CGI 的領域上,掀起巔覆性的革命。對於一位專業的Web Master 而言,它將也是必修課程之一。

PHP 4.0是更有效的,更可靠的動態Web頁開發工具,在大多數情況運行比 PHP 3.0要快,其腳本描述更強大並且更復雜, 最顯著的特徵是速率比的增加。PHP4.0這些優異的性能是PHP 腳本引擎重新設計產生的結果:引擎由 AndiGutmans 和 Zeev Suraski從底層全面重寫。PHP4.0 腳本引擎 ——Zend 引擎,使用了一種更有效的編譯——執行方式, 而不是PHP 3.0 採用的執行 ——當解析時模型。

PHP4在3.0版的基礎上增加或增強了許多有用的特徵,主要如下:

(1)別名:在PHP4中,可以利用引用為變數賦值,這給編程帶來了很大的靈活性。

(2)擴充了API 模塊:PHP 4.0 為擴展的 API 模塊的提供了擴展PHP介面模塊, 它比舊的 API 版本顯著地快。 PHP 模塊已有的及最常用的介面多數被轉換到使用這個擴展的介面。

(3)自動資源釋放:PHP4增加了引用計數功能,這種新技術的引入使PHP4具有了自動內存管理功能,減輕了開發人員的負擔。

(4)布爾類型:PHP 4.0 支持布爾類型。

(5)進程生成:在 UNIX 環境下的 PHP 4.0 提供了一個很智能和通用的生成進程, 使用了一種名為基於automake/libtool的系統生成技術。

(6)COM/DCOM 支持:PHP 4.0 提供 COM/DCOM 支持 ( 僅用於Windows 環境 ) 可以無縫地存取和訪問 COM 對象。

(7)與PHP 3.0 兼容性很好:PHP 4.0 是與 PHP 3.0 代碼向後兼容性接近100% 。由於 PHP 4 的改進的體系結構,兩者有一些細微的差別,但是大多數人將可能永遠不可能遇上這種情況。

PHP介紹

(8)配置:PHP4重新設計和增強了PHP。ini文件,這使得用PHP。ini來配置PHP顯得極為容易,這個文件可以在運行時被Apache(unix系統)或由Windows 注冊(Windows 環境)。

(9)加密支持:PHP4實現了完整的加密, 這些加密功能是一個完整的mycrypt庫,並且 PHP 4.0 支持哈希函數。Blowfish,TripleDES,MD5,並且SHA1 也是可使用的一些加密演算法。

(10)類型檢查:PHP 4.0 支持同一操作符用於評類型檢查:===( 3 等號運算符 ), 為在兩個值和其類型之間作檢查。例如, 3 ===3 將視為假 ( 類型是不同的 ), 而 3 ==3 ( 相等判斷 ) 將視為真。

(11)FTP 支持:PHP 4.0 支持 FTP 。通常, 你會為通過一個數據機連接下載一個大文件提供一個介面。然而, 如果你確實有需要,可以使用PHP 。

(12)PHP4新增函數或功能增強函數:PHP 4.0 新增了許多函數,同時也將許多現有的函數功能進行了增強,以下是一些例子。 array_count_values() eval() foreach() nclude() ob_end_clean() ob_end_flush() ob_get_contents() ob_start() strip_tags() unset()

(13)here列印:PHP 4.0 的Here列印是與Perl類似的, 盡管完全不相同。Here是列印大容量文章的一個有用的方法,例如在 HTML文件中,不會漏掉任何一個字元,例如目錄標記。

(14)HTTP Session fallback 系統:為 HTTP Session管理的一個 fallback 系統在 PHP 4.0被實現 。預設情況下,Session標識符由cookies存儲。如果沒有cookies支持或一項cookies任務失敗,Session標識符自動被創建並在 URL 的查詢字元串中被攜帶。

(15)ISAPI 支持:PHP 4.0 能作為一個個性化的 ISAPI 模塊作為 IIS插件 。這比 PHP 3.0 更有效, 它作為一個外部的程序來運行。

(16)內存:PHP 4.0 能更有效的使用內存, 導致較少的內存佔用消耗,這主要歸功於引用計數技術的實現。

(17)其他類成員函數:在 PHP 4.0 你能在成員函數本身的作用域或全局范圍內調用其他類的成員函數。例如,你能用一個子函數覆蓋父函數,並在子函數中調用父函數。

(18)多維數組:在 PHP 4.0 ,利用GET,POST,Cookies的進行的數據傳輸支持多維數組。

(19)個性化的 HTTP Session支持:HTTP Session處理, 包括 fallback 系統管理,在 PHP 4.0被它的新庫函數實現 。在版本 3.0 中處理Session要求使用 PHPLIB 和第三方的庫函數, 它比把Session直接地由 PHP 支持慢了許多。

(20)個性化的 Java 支持:PHP 4.0 支持和java的交互。這種個性化的Java 支持為PHP 在 Java 對象上創建和使用方法提供一個簡單並且有效的工具。

21)對象和數嵌套組:PHP 4.0 實現了功能更加強大的對象, 移去了 PHP 3.0存在的種種句法限制。對象能在數組以內被嵌套並且反過來也如此, 可以根據你的需要實現嵌套。

(22)面向對象的編程:PHP 4.0 為面向對象的編程和構造類及對象提供擴展的功能和新特徵。PHP4實現了對象重載,引用技術等新技術。

(23)對象重載支持:對象重載語法允許第三方的基於面向對象的類庫使用 PHP4 的面向對象的特徵存取他們自身的功能。使用這個特徵的一個 COM 模塊已經被實現了。

(24)輸出緩沖支持:PHP 提供了一個輸出緩沖函數集合。輸出緩沖支持允許你寫包裹函數功能壓縮緩沖區。在 PHP4 的輸出緩沖支持允許 HTML 頭信息存放, 無論 HTML的正文是否輸出。頭信息( (header(), content type, and cookies ) 不採用緩沖 。

(25)增加了PCRE 庫:PHP 4.0 包括一個 Perl 兼容的正則表達式 (PCRE ) 庫, 和正常regex庫一起與 PHP 綁定。split 和replace PCRE 功能被支持。PCRE 和 Perl 正規表達式之間有一些細微差別。

(26)PHP.ini 文件:PHP.ini文件在 PHP4.0 被重新設計, 使用的 PHP 的配置PHP.ini是更容易並且更有效的。全部文件能被Apache 在運行時間操作 ( 在 Apache環境 下 ) 或由 Windows 注冊表 ( 在 Windows 下面 ) 。被加入PHP.ini文件的配置指令自動地在所有相關的模塊中被支持。

(27)引用計數:PHP 4.0 為系統中的每個數值提供了引用計數, 包括資源。一旦一個資源不再被任何變數引用,它自動地被釋放以節省內存資源。利用這個特徵的最明顯的例子一個內置SQL查詢的循環語句。在PHP 3.0中 ,每次遞歸另外的 SQL 結果集合重復申請內存,直到腳本執行完畢,這些結果集合佔用的內存才被釋放。

(28)支持引用:通過引用可以改變一個變數的值。

(29)函數的運行時綁定:PHP 4.0 的運行時間綁定功能允許你在他們被聲明以前調用, 無論聲明是否在代碼以後或是在運行時間。

(30)類的運行時信息:PHP 4.0 支持在運行時刻存取下列類信息:一個對象的類名,一個對象的父類的類名字,以及對象函數所在的名字。

(31)伺服器抽象層:為支持Web伺服器提供了增強型 SAPI ( 伺服器 API ) 介面,是 PHP 4。0 不可分的一部分。這個伺服器抽象層,提供了通用的WEB伺服器介面支持,支持多線程WEB伺服器,為大多數的WEB伺服器提供透明的支持, 這些伺服器包括 Apache ,IIS ( ISAPI ), 以及 AOL 伺服器。

(32)語法的點亮顯示:PHP 4.0 語法的點亮顯示允許開發者看見源代碼而不是腳本, 這個功能比PHP 3。0中的更有效。它跑得更快,更執行得更好,並且產生更緊湊的HTML代碼。
(33)由引用改變變數的值:PHP 4.0 由引用支持可變的賦值, 「關聯」的2個變數之中個的任何一個的值被改變,另外的變數的值同樣被改變,這類似與C中的指針類型。

(34)在引用字元串中的變數引用:PHP 4.0 增強了在引用字元串中的變數引用。

PHP 在資料庫方面的豐富支持,也是它迅速走紅的原因之一,它支持下列的資料庫或是數據文件:

· Adabas D
· DBA
· dBase
· dbm
· filePro
· Informix
· InterBase
· mSQL
· Microsoft SQL Server
· MySQL
· Solid
· Sybase
· ODBC
· Oracle 8
· Oracle
· PostgreSQL

而在 Internet 上它也支持了相當多的通訊協議 (protocol),包括了與電子郵件相關的 IMAP, POP3;網管系統 SNMP;網路新聞 NNTP;帳號共用 NIS;全球信息網 HTTP 及 Apache 伺服器;目錄協議 LDAP 以及其它網路的相關函數。

除此之外,用 PHP 寫出來的 Web 後端 CGI 程序,可以很輕易的移植到不同的操作系統上。例如,先以 Linux 架的網站,在系統負荷過高時,可以快速地將整個系統移到 SUN 工作站上,不用重新編譯 CGI 程序。面對快速發展的 Internet,這是長期規劃的最好選擇。

一個PHP實例

<html>

<head>

<title>First program</title>

</head>

<body>

<?php

echo "hello, worldn";

?>

</body>

</html>

閱讀全文

與細說php第三版相關的資料

熱點內容
app開發先學什麼 瀏覽:574
ox圖pdf 瀏覽:620
scratch編程選擇題如何製作 瀏覽:783
伺服器的陣列卡有什麼作用 瀏覽:886
linux登錄超時 瀏覽:479
播放音樂dll命令 瀏覽:901
javajdk和jre 瀏覽:490
程序員都是怎麼關機的 瀏覽:769
如何更換文件夾的格式 瀏覽:529
openssl不是內部或外部命令 瀏覽:759
西方經濟學宏觀pdf 瀏覽:21
comp命令分析 瀏覽:521
什麼app可以看隧道 瀏覽:155
文件夾兩份相同 瀏覽:100
python123手機怎麼弄 瀏覽:466
如何判斷柯力d2008儀表有沒有加密 瀏覽:930
miui加密狀態 瀏覽:326
閃訊無法解析伺服器的dns地址 瀏覽:48
java創建json 瀏覽:786
奧特曼傳奇如何獲取伺服器時間 瀏覽:7