PHP之基本文法

來源:互聯網
上載者:User

標籤:io   os   使用   檔案   資料   sp   c   on   代碼   

      人生最幸福的事之一就是,鄰居家的wifi密碼是123456789,於是回家在pad上也照樣可以扯淡。任何語言都有自己的文法,這裡只簡單說些我覺得應該注意的地方。

      首先要明白,PHP是運行於伺服器端的指令碼語言,從上到下一步步執行。使用PHP寫的代碼是在伺服器上就解析成html,配合js特效、css樣式,再由瀏覽器翻譯成頁面展示出來的,也就是說當一個頁面呈現在你面前時,對於不是連結性質的動作,如不會發送請求的點擊等,已經與伺服器無關了,對於一些好看的樣式以及接下來伴隨滑鼠移動可能出現的漂浮、滾動、收合是在在瀏覽器端即刻啟動並執行。

      PHP代碼可以嵌套在html、js中,通常先由前端在該放資料的地方用一些固定資料,待前端頁面做好後,再由PHP程式員去將固定資料替換成PHP變數,這個工作被稱為套模板。因此,即便是後台資料發生更改也無關前端,變數的資料跟著改,即便前端頁面改動,讀出來還是那些資料。

      標準的PHP程式一般以<?php開頭,可以以?>結束但不推薦這樣做。於是列印hello world的程式可以是這樣的

     <?php

              echo ‘hello world‘;

      對於開始和結束標記,是可以在PHP的設定檔中修改的,比如<% code %>或者短標記<? code ?>,但只有上一種最為常見、通用。

      PHP的注釋單行時可用//或者#,#注釋是一種shell指令碼風格,在設定檔中用得有。多行注釋用/*...*/,而PHP的關鍵字是大小寫不敏感的,echo與EcHo效果一樣。

      變數的命名以$開頭,如$str=‘string‘。PHP的變數去類型也分整型、浮點、字串、物件類型等,還有資源類型,類似於C的指標型,偽類型,它是泛指多種資料類型的類型表示。比如在同一個程式指令碼中,可連續寫:$s=1; $s=1.23; $s="string";,上一個變數的名字完全可以跟下一個一樣,前面沒有什麼int、float等,也不會報錯。這源於PHP是一門弱類型語言,它弱在變數不分類型的通通接收儲存,而且可以重複命名,下一個值自動將上一個值覆蓋掉。但是PHP還是有類型的區分的,在程式中也可以進行類型之間的自動或強制轉換,比如null空類型必要時自動轉換為bool型的false。

      可變變數是個有點小特別的東西,比如

      <?php    $a="something";  $b="a"; echo $$b;  //輸出something

      注意到b前面有兩個貨幣符號,右邊的$b將被視為一個整體並取值,它的值是a,於是這個列印的變數實際是$a,再次視為整體並取得該變數的值,於是列印的是$a的值。這個東西很有用,在寫程式時可以非常靈活的命名一些變數。

      類似於C++,PHP中也有引用,$b=&$a後,它倆就綁定到一塊兒了,它們的改變的影響是相互的。在C++中引用之所以相互改變值,是共用著一塊地址,但是對於PHP,好像不怎麼提地址這種說法,PHP官網對此解釋成別名,類似unix的檔案名稱和檔案本身檔案名稱跟檔案本身的內容是兩個東西,我只瞭解一點Linux知識,多使用者多任務,這是它的屬性,因此在Linux下面可以邊瀏覽檔案邊變更檔名,要是在win下面,請關閉該檔案先。b是a的別名,它的值的改變會影響到a的內容,但是它們只是名字,與所擁有的內容無關,該這麼理解?感覺還是糊塗的。

      PHP的常量的命名前面是沒有$的,在類外面是define(‘CON‘, ‘host‘),類裡邊是const CON=‘host‘,CON就是該常量的名字。

      常量一般是描述不變的值,PHP中有許多預定義的常量,最典型的當屬TRUE和FALSE,條件判斷時經常用到,還有如PHP_VERSION,當前的PHP版本。

      魔術常量,聽起來絕筆高大上的一個東西,魔術一般不是變的嗎,怎麼後邊還加一常量,初次接觸感覺有點彆扭,實際上它還真的處於變與不變之中。比如魔術常量__LINE__,不變的是它肯定指的是行號,變的是,在哪一行它就被賦予那一行的行號,不同的行就是不同的值,當然還有很多其他的魔術常如__CLASS__、__FILE__、__METHOD__等。

      當然,PHP作為一個比較強大的語言,一般語言有的特質基本都有,運算式、位元運算、流程式控制制等等。

             

PHP之基本文法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.