php和perl的區別

來源:互聯網
上載者:User

1.變數名的定義
    Perl的一般變數、雜湊變數和陣列變數,分別用$、%和@開頭,而PHP的所有變數都以$開頭,這一點,似乎PHP更簡潔一些。而且,PHP的雜湊數組,本身已經是排過序的,Perl需要用Tie::IxHash才能得到排過序的雜湊數組。個人感覺PHP變數名的定義要好於Perl。

2.函數的多寡
    Perl基礎的函數很少,而且多跟C接近。這一點,個人認為Perl要進階一些,系統一些。PHP的函數很多,遠遠多出Perl,PHP好像是需要什麼功能就做一個函數,所以數量很多很雜,相近的甚至是重複的函數也不少,這也是一些“正統”的人不喜歡PHP的原因之一。

3.擴充模組的多寡
    Perl的擴充模組非常多,幾乎涉及所有領域,所以Perl幾乎無所不能,CPAN是Perl擴充模組的大本營。PHP的擴充模組集合稱為Pear,也有很多模組,不過比起CPAN,還是顯得少。

4.物件導向的能力
    Perl的物件導向是用模組來實現的,感覺不適真正意義上的OO,只是一般意義上的函數和變數封裝。PHP4也大體如此。PHP5以後,物件導向的特性有了大幅度的改善,已經具備了幾乎所有的OO特性,儘管還沒有達到Java那樣的物件導向,感覺也很不錯了。

5.跨平台的能力
    兩者都跨平台,不過Perl更傾向於Linux/Unix,在Windows上得藉助於ActivePerl,且mod_perl好像只跟Apache配合(沒嘗試過IIS和mod_perl結合,所以能否實現不是很清楚),PHP則兼顧多種環境,Windows上面的表現跟Linux/Unix下面幾乎一樣,跟Apache/IIS也能隨意結合,這一點,應該說PHP做得很好,可以做到隨意搭配。

總結

    最直接的感覺,PHP來做伺服器端的嵌入式指令碼,兩個字:方便,然而由於其方便,犧牲了一些原則,有時候會有一些令人惱火的“方便”,比如,Post/Get的內容自動加“/”的設定,剛開始不明白,總也想不出什麼地方出了毛病,後來才知道是設定上的問題,這時候的感覺,就是PHP畫蛇添足。Perl是比較傳統的語言,它誕生的時候,並不是為了做動態網頁的,所以用它做動態網頁的時候,可能不如PHP方便,但是Perl很全面,做 Batch是Perl的強項,本來很複雜的東西,用Perl做,也許可以輕鬆解決。

    總的說來,這兩個語言大體是相通的,所以只要會了其中一種,另外一種上手很容易,幾乎是“不費吹灰之力”。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.