搜尋

隨機推薦

01 十一月 2010
23 十一月 2010
28 十一月 2009

作者:周思博 (Joel Spolsky)
譯:Paul May 梅普華
Wednesday, October 08, 2003
屬於Joel on Software, http://www.joelonsoftware.com


還搞不懂那個神秘的Content-Type tag嗎?你知道的,就是那個應該放在HTML裡卻又永遠不知道該設成什麼內容的標籤啊。

你曾經收到在保加利亞的朋友寄來,主題是「???? ?????? ??? ????」的電子郵件嗎?

ibm.jpg

很多軟體開發者並未真正完全理解字元集、字元編碼、Unicode等等的神秘世界,當我發現不懂的人那麼多時真的很失望。數年以前,某位beta測試人員想知道FogBUGZ是否能處理日文的電子郵件?他們竟然用日文寫電郵?我完全不知道耶。我們用了一個商用ActiveX控制元件來分析MIME電郵訊息,當我仔細調查這個元件時,才發現它對字元集的處理完全錯誤,所以我們還寫了些了不起的程式,把錯誤的轉換還原後再重做正確的轉換。我又去看看另一個商用程式庫,它的字元編碼實作也是完全不對。我聯絡該軟體的開發者,結果他似乎有點認為沒辦法改善。他跟很多程式師一樣,只希望這個問題能憑空消失。

中國高考的滿分作文!(大學聯考)

九百倍的「萬中選一」(考生九百萬)

讓人感動的,可不僅是引經據典的博覽多文、飽讀詩書而已。

讓人感動的,是他那堅定的意志、價值觀,與豪氣!

 

下面這一小段是個人最喜歡的~

有了一顆拒絕平庸的心,終有人會從你眼中的堅定,從你不俗的談吐與緊握的雙拳看出你的不凡。 即使結果還是不盡如人意,即使會有“心比天高,命比紙薄”的詆毀,即使“零落成泥碾作塵”,仍會有“香如故”。

 

這次的作文主題是「不平庸」,以下是作者 - 宜興中學的王希所寫的作文原文:

 

PHP經過長時間的發展,很多用戶都很了解PHP了,這裡我發表一下個人理解,和大家討論討論PHP命令行。 PHP Command Line Interface (CLI) Server Application Programming Interface (SAPI)在PHP V4.2.0開始發布,用於試驗目的。到V4.3.0時,已經受到完整支持並且默認啟用。

 

PHP CLI SAPI允許您開發PHP支持的shell腳本,甚至是基於桌面的腳本。事實上,可以用PHP命令行運行的工具。採用這種方式,PHP開發人員可以像 Perl、AWK、Ruby 或shell程序員一樣高效。本文探究構建到PHP中的工具,讓您了解PHP運行的底層shell環境和文件系統。 PHP為執行外部命令提供大量函數,其中包括shell_exec()、exec()、passthru()和system()。這些命令是相似的,但為 您運行的外部程序提供不同的界面。所有這些命令都衍生一個子進程,用於運行您指定的命令或腳本,並且每個子進程會在命令輸出寫到標準輸出(stdout)時捕捉它們。

介紹

再撰寫PHP網站時,發送e-mail是一個經常使用的功能,PHP本身就有提供寄送e-amil的功能可以使用,就是利用mail( )這個函式,有關mail( )如何使用可參考:http://tw2.php.net/mail。

但是PHP內建的mail( )功能並不完善,以我所碰到的經驗為例,最基本的就是只能寄送文字e-mail,但時至今日,很多e-mail大多以HTML格式為主,除了能夠插入圖之外,e-mail的文字顯示也具有較豐富的變化。

首先,要先知道怎麼在php裡執行外部指令

請看

稍微介紹一下 passthru()

passthru
(PHP3 , PHP4)
passthru --- 執行外部程式並且顯示未加工的(raw)輸出

語法 :
void passthru(string command [, int return_var])

 

 

 

說明 :

passthru( )類似於exec( ),如果有給予參數return_var,則傳回的Unix命令的狀態將會放在這裡。從Unix命令輸出的是二進制資料,這些資料需要直接地傳送到瀏灠器時,可用此函式來代替exec( )或system( )。用來執行像是pbmplus效用的指令,可以直接地輸出圖形資料流,設定content-type為image/gif,然後呼叫pbmplus程式來輸出一個gif,你可以建立PHP程式直接地輸出圖形。

注意 : 如果你使用此函式來啟動一個程式,而且希望在背景裡(background)執行的時候離開它,你必須確定此程式的輸出是轉向(redirected)到一個檔案或是一些輸出的資料流,否則PHP將會懸掛(hang)直到程式執行結束。

 

因此如果想要在後台執行指令, 請參考此例

$cmd = 'upgrade > /dev/null &';
passthru($cmd);

這幾個function的區別:

  • system()輸出並返回最後一行shell結果。
  • exec()不輸出結果,返回最後一行shell結果,所有結果可以保存到一個返回的數組裡面。
  • passthru()只調用命令,把命令的運行結果原樣地直接輸出到標準輸出設備上。

 


相同點:都可以獲得命令執行的狀態碼

demo:
//system('dir');
// exec ('dir');
// passthru ('dir');
// echo `dir`;

PHP作為一種server端的腳本語言,可以編寫簡單與複雜的動態網頁功能,PHP能夠完全勝任。

但有時為了實行某些功能,筆續透過外部的shell script或是指令(或稱為命令),可以比較有效率的完成目的。

那麼,是否可以在PHP中執行外部指令呢? 可以只要用一個或幾個function即可

AJAX 技術的廣泛運用,對網際網路的發展帶來重大變革;透過更新部分頁面即可維護資料,更有效率的反應使用者動作,避免在網路上發送沒有改變的資訊所帶來的頻寬的浪費。但是這樣部分更新的做法,同時也伴隨著缺點,其中受到最多批評的就是瀏覽器後退按鈕的失效;因為 AJAX 並不會更新整個頁面,自然也就無法在瀏覽器中的歷史紀錄留下資訊。

不過這個問題,早在 google 廣泛利用 AJAX 技術的初期,就已經被他們解決囉!雖然必須針對各種瀏覽器做各自不同的處理,但是現在 jQuery 已有網海中的前輩推出簡單使用的 Plugin囉:history plugin,官網本身也是展示網頁;下面稍微介紹一下使用以及運作的流程:

 

關於什麼是Engine(引擎)?

在Half-Life 完成之後不久,Valve開始籌備他們的下一個主打遊戲--Half-Life 2。在商討遊戲引擎的採用問題上,開發小組明白到原版遊戲改採用的改良Quake 1引擎對於Half-Life 2來說顯得過於破舊,而且在很多的方面都不符合這一代遊戲發展的要求。於是,vlave的開發小組決定從美工設計以及遊戲代碼開始,設計出一個全新的遊戲框架,並在其中加入了一套來自havok的定製物理引擎。 
對於一個遊戲來說,“引擎”就是一個系統,就像是一輛汽車的發動機一樣,他能輸入來自加速器的動能,並輸出到輪子的轉動。軟件(在這裡為遊戲)的引擎實現的東西和汽車的發動機一樣,輸入來自框架(某些程序或者文件的片段),然後輸出程序員們想要的結果。再次拿汽車的發動機為例,一個軟件的引擎不能自行運作,他必須依靠另外一個系統,就好像,你只能開著“一台汽車”而非“一台發動機”去上班。在Source中,一個純粹的引擎只能是一堆代碼,完全不具有可玩性。所以不難對引擎下這樣的定義:引擎就是一套讓遊戲元素發生互動關係並將其編譯成可玩程序的代碼或程式,依靠框架進行操作。

band

 

 

11.再接再厲―Unreal2引擎

Unreal引擎一炮打響,EPIC又再接再厲推出了Unreal2引擎。相比第一代Unreal引擎,Unreal2的全部代碼幾乎重寫,並集成了最新的編輯器。隨著遊戲開發的需要,遊戲引擎的內涵也在不斷擴大,Unreal2引擎擁有了更多的功能。


clip_image001


《Unreal 2》虛幻2的畫面

當時物理加速技術已然成形,Unreal2引擎便集成了Karma 物理加速技術開發包,引擎中的物理效果得以增強,並且開始支持XBOX、PS2等主機平台。Unreal2引擎期間有過一次小幅升級,被稱為UE2.5,渲染性能有了一定提高。

clip_image002 
這張Unreal 2的看起來更漂亮一些

 

Please publish modules in offcanvas position.