php 第一次課

2021-04-20 00:21:29 字數 2591 閱讀 2184

1   基本語法

我們根據 1.3 節建立的示例來進一步講解 php 中的基本語法。

1. 變數

php 是弱型別語言,不要求使用變數之前宣告變數。在第一次給變數賦值時,該變數才被建立。賦值的同時指定了該變數的型別。

php 基本資料型別包括:integer 整數,float/double 浮點數/實數,string 字串,boolean 布林(true 或 false),array 陣列,object 物件。

此外還有兩個特殊型別:null (空) 和 resource (資源)。

例如:

$tshirt = 0; // tshirt 是整數型別變數
$cash = 0.00; //cash 是浮點型別的變數
注意:若我們繼續將 cash 賦其他值,如:

$cash = 'hello unix-center';
cash 變數會改變為字串型別。因此,請記住:php 將自動獲得輸入的資料型別。

如需型別轉換,可以用圓括號實現,類似 c 語言;或者用 inval(), floatval(), strval() 函式,其中 intval 可以用來整數的進製轉換:

$cash = (float)$tshirt
在 php 中提供了一種「可變變數」,允許我們動態的改變乙個變數的名稱。例如:

$varname = 'tshirt'
於是我們就可以用 $$varname 取代 $tshirt,設定 $tshirt 值。

$$varname = 5; // 等價於 $tshirt = 5;
測試變數型別和設定變數型別可以用 gettype() 和 settype() 兩個函式。

測試變數狀態(是否存在),可以用 isset() 函式,而 unset() 函式用來銷毀乙個變數。empty() 可以用來檢查變數是否存在且值是否為非空或非0。

2. 常量

常量名稱由大寫字母組成,使用 define 函式定義常量。常量只可以儲存:布林、整數、浮點或字串資料,均為標量資料。

define('tshirtprice', 100);
常量可以直接使用,不用 $,例如:

echo tshirtprice;
我們在 1.2 節中執行的 phpinfo() 中,顯示的就是 php 預定義常量和變數的列表,以及其他有用資訊。

3. 作用域

php 作用域基本規則如下:

超級全域性變數列表如下:

4. 操作符

算術操作符:+ 加,- 減,* 乘, / 除, % 取餘。

例如:

$total = $a + $b
注意:

賦值操作符:=。

復合賦值:$a += $b 對應 $a = $a + $b。其他符號類似:-=, *=, /=, %=, .=。

前置/後置遞增/遞減,區別如例:

$a = 4; echo ++$a; // 輸出為5,$a 為5。(先++)

$a = 4; echo $a++; // 輸出為4,$a 為5。(後++)

$a = 5;

$b = &$a;

$a = 7;

那麼 $a 和 $b 指向了記憶體相同位址,現在都是7。

比較操作符:==,兩個等號,判斷兩個值是否相等。===,三個等號是恒等比較,需要值相等並且相同的資料型別時才返回 true。此外還有:!= 不等,!== 不恒等,<> 不等,< 小於,> 大於,<= 小於等於,>= 大於等於。

邏輯操作符:! 非,&& 與,|| 或,and 與,or 或。(其中 and 和 or 要比 && 和 || 優先順序低)

位操作符:& 按位與,| 按位或,~ 按位非,^ 按位異或,<< 左位移,>> 右位移。

陣列元素操作符: 訪問陣列元素,++ 聯合,== 等價,=== 恒等,!= 非等價,<> 非等價,!== 非恒等。

其他操作符,包括:

1.5 控制結構

1. 判斷結構

第一種,單一條件:

if (判斷條件)

else

也可以繼續向下新增條件 elseif 和 else if 均可。

第二種,多重條件:

switch(判斷變數)

2. 迴圈結構

當不知道重複次數,可以用 while 迴圈,先判斷,再迴圈:

while (條件)

當知道重複次數,可以用 for 迴圈:

for (初始化; 判斷; 調整)

另外 foreach 迴圈語句專用於陣列,將在後面介紹。

如果需要先迴圈,再判斷,可以用 do-while 迴圈:

do

while (條件)

do-while 迴圈會至少執行一次。

而在控制和終止迴圈方面:

另外在控制結構中還有乙個可替換的語法形式,冒號(替換開始花括號()。

3. declare 結構

形式如下:

declare (指令)

該結構用於設定**塊的執行指令。目前只有 ticks=n 可以設定**塊每隔 n 行**執行特定函式,這有助於除錯。

第一次實驗課

一,實驗目的 1.熟悉c語言整合開發環境 2.掌握c程式結構,熟悉c程式編碼規範 3.掌握c程式編寫 編譯 執行 除錯方法 4.掌握基本資料型別 常量 變數的使用 5.掌握常用運算子用法,掌握表示式求值規則 實驗準備 二,實驗內容 part1 p116練習 1 2 3 中的失誤 1,表示式末尾的分號...

第一次實驗課

includeint main includeint main includeint main includeint main printf n printf 當遇到問題時,你會選擇 n printf 1.遇到問題,就解決問題。不懂的,搜尋式學習,逐個攻破.n printf 2.遇到問題,不高興。然...

第一次課學習總結

本週是嵌入式課程第一節課,在此之前,我對嵌入式技術有所聽聞,但是卻沒有真正去了解它。而本週已經正式開課,故在本次課程結束後,做出如下學習總結 在了解了嵌入式技術的概念以及優缺點後,再對比嵌入式軟體與非嵌入式軟體的區別,可知嵌入式軟體是結合作業系統之上做的開發,而非嵌入式軟體做的是裸機開發。那麼,嵌入...