程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php基礎入門篇學習筆記,php入門篇學習筆記

php基礎入門篇學習筆記,php入門篇學習筆記

編輯:關於PHP編程

php基礎入門篇學習筆記,php入門篇學習筆記


本文章詳細的介紹了在php學習中的最基礎的內容包括了基本數據類型、變量類型、操作符等入門都會要接觸到的東西。
-
php支持的基本數據類型:
Integer:整數
Float(Double,雙精度值):浮點數,表示所有實數
String:字符串
Boolean:布爾值,true/false
Array:保存具有相同類型的多個數據項
Object:對象,保存類的實例
NULL:沒有被賦值、已經被重置或被賦值為特殊值NULL的變量
特定的內置函數(例如數據庫函數)將返回resource類型的變量

四種標量類型:

string(字符串) 
integer(整型) 
float(浮點型,也作 double ) 
boolean(布爾型) 
兩種復合類型:

array(數組) 
object(對象) 
兩種特殊類型:

resource(資源) 
NULL(空) 
查看變量類型
通過 gettype() 函數可以方便的查看某個變量的類型:

 代碼如下 復制代碼 
<?php
$var_bool = TRUE;     // a boolean
$var_str  = "foo";     // a string
$var_int  = 12;      // an integer

echo gettype($var_bool);    // 輸出 boolean
echo gettype($var_str);     // 輸出 string
echo gettype($var_int);     // 輸出 integer
?>
 

提示
由於歷史原因,如果是 float 類型數據,gettype() 函數返回的是 double,而不是 float 。 
如果想查看某個表達式的值和類型,請使用用 var_dump() 函數。 
判斷變量類型
如果想通過判斷變量類型來確定下一步邏輯動作,不要使用 gettype() ,而使用 is_type 系列函數:

 代碼如下 復制代碼 
<?php
$var_int  = 12;

// 如果 $var_int 是 int 類型,這進行加法
if (is_int($var_int)) {
    $var_int = $var_int+4;
}
echo $var_int;  // 輸出 16
?>
 


NULL和resource都代表外部資源,例如數據庫連接
基本上不能直接操作一個resource變量,但是通常它們都將被函數返回,而且必須作為參數傳遞給其他函數。

在php中,變量的類型是由賦給變量的值確定的。(動態類型語言)
PHP可以在任何時間根據保存在變量中的值來確定變量的類型,也就是具有在任何時間透明地改變變量類型的功能。 
PHP將“自動地”獲得輸入的數據類型,一旦從變量中檢索變量值,它將返回具有相同數據類型的數據。
養成習慣:常量名稱都是由大寫字母組成的。這樣容易區分變量和常量。
常量和變量之間的一個重要不同點在於引用一個常量的時候,它前面並沒有$符號。
常量和變量的另一個差異在於常量只可以保存布爾值、整數、浮點數或字符串數據,這些類型都是標量數據。

變量類型變化(juggling) 
PHP不需要(或者說不支持)在聲名變量明確他的變量類型;一個變量的類型是由這個變量被使用的前後關系來決定的,也就是說,如果你給一個變量var賦了 一個字符串的值,var就變成了字符串變量。如果你再將一個整數賦值給var,他又變成了一個整數型變量。 一個PHP自動轉化變量類型的例子是加法的操作符’+’。如果任何一個操作數都是雙精度數,那麼所有的操作數被當作雙精度數求值,並且結果也是雙精度數。 否則,操作數將被認為是整數,結果也將會是整數。注意這並不影響每個操作數本身的變量類型,唯一的變化就是操作數在計算的過程中被如何處理。 $foo  =  "0";  //  $foo  是一個字符串  ,值是“0”(ASCII  48)

PHP代碼

 代碼如下 復制代碼 
$foo  =  "http://www.hzhuti.com/HTC/G11/";  //  $foo  是一個字符串  ,值是“0”(ASCII  48)      
$foo++;  //  $foo  是一個字符串,值是“1”(ASCII  49)      
$foo  +=  1;  //  $foo  現在是一個整數(2)了      
$foo  =  $foo  +  1.3;  //  $foo  現在是一個雙精度數(3.3)了      
$foo  =  5  +  "10  Little  Piggies";  //  $foo  是一個整數  (15)      
$foo  =  5  +  "10  Small  Pigs";  //  $foo  是一個整數  (15)   


如果你覺得上面例子中最後兩個表達式看起來有點奇怪的話,請看 “字符串的轉化”部分。 如果你希望強制一個變量被當作某種固定的類型來計算,請看 “類型強制(casting)” 一節。如果你希望轉變一個變量的類型,請看函數“settype()”的說明。
 確定一個變量的類型
因為PHP自己決定變量的類型並且一般按照需要轉化他們,一個特定的變量的類型不是在任何時間都非常明顯。PHP包括一些函數可以找出這個變量的類型。這 些函數是gettype(), is_long(), is_double(), is_string(), is_array(), 和 is_object(). 
類型強制(type casting)
在PHP中類型強制同在C語言中大抵相似:將需要的類型的種類寫在要強制的變量的前面的圓括號中。
 

PHP代碼

 代碼如下 復制代碼 
$foo  =  10;  //  $foo  是一個整數     
$bar  =  (double)  $foo;  //  $bar  是一個雙精度數    


以下的強制方式是允許的: (int), (integer) – 強制成整數 (real), (double), (float) – 強制成雙精度數 (string) – 強制成字符串 (array) – 強制成數組 (object) – 強制成對象 注意在圓括號中允許制表符(tabs)和空格(spaces) ,因此下面的語句是等價的: $foo = (int) $bar; $foo = ( int ) $bar; 
字符串轉化
當一個字符串被當作數字型的值來計算時,他的結果和類型如下面所述的決定。 如果這個字符串含有字符’.’,’e’,或者’E’,則被當作雙精度類型變量來處理,否則當作是整數。 這個字符串的值由詞首部分決定。如果這個字符串以任何有效的數字的數據開始,那麼這個數字數據就是這個字符串參加運算的值。否則,值為零(zero)。有 效的數字數據是遵循下面的這些標記的,跟隨在一個或多個數字後面(可以包含小數點),跟隨在一個可選的指數後面。指數是由一個或多個數字跟在’e’或 ’E’後面構成的。
 

PHP代碼

 代碼如下 復制代碼 
$foo  =  1  +  "10.5";  //  $foo  是雙精度數  (11.5)      
$foo  =  1  +  "-1.3e3";  //  $foo  是雙精度數(-1299)      
$foo  =  1  +  "bob-1.3e3";  //  $foo  是整數  (1)      
$foo  =  1  +  "bob3";  //  $foo  是整數  (1)      
$foo  =  1  +  "10  Small  Pigs";  //  $foo  是整數  (11)    
$foo  =  1  +  "10  Little  Piggies";  //  $foo  是整數  (11);      
//  這個字符串包括字符'e'   


標識符


操作符:
1)賦值操作符:=

2)算術操作符:+,-,*,/,%(取模)

3)連接操作符:. ,無論操作數是什麼,都當成String,結果返回String

4)合計賦值操作符(Combined Assignment Operators):+=,*=,/=,-=,%=,.=

5)自動增減操作符(Automatically Incrementing and Decrementing):

(1)$variable+=1 ⇔$variable++;$variable-=1 ⇔$variable-,跟c語言一樣,先做其他操作,後++或-

(2)++$variable,-$variable,先++或-,再做其他操作

6)比較操作符:

= =(左邊等於右邊),!=(左邊不等於右邊),
= = =(左邊等於右邊,且數據類型相同),
>=,>,<,<=

7)邏輯操作符:|| or,&& and,xor(當左右兩邊有且只有一個是true,返回true),!

一個參考表

運算符(Arithmetic Operators) Operator
符號 Description
描述 Example
案例 Result
結果 
+ Addition
加號 x=2
x+2 4 
- Subtraction
減號 x=2
5-x 3 
* Multiplication
乘號 x=4
x*5 20 
/ Division
除號 15/5
5/2 3
2.5 
% Modulus (division remainder)
求模(余數) 5%2
10%8
10%2 1
2

++ Increment
自加 x=5
x++ x=6 
-- Decrement
自減 x=5
x-- x=4


Assignment Operators
分配符(Assignment Operators)

Operator
符號 Example
案例 Is The Same As
等同於 
= x=y x=y 
+= x+=y x=x+y 
-= x-=y x=x-y 
*= x*=y x=x*y 
/= x/=y x=x/y 
%= x%=y x=x%y


Comparison Operators
比較符(Comparison Operators)

Operator
符號 Description
具體描述 Example
案例 
== is equal to
等於 5==8 返回 false 
!= is not equal
不等於 5!=8 返回  true 
> is greater than
大於 5>8 返回  false 
< is less than
小於 5<8 返回  true 
>= is greater than or equal to
大於等於 5>=8 返回  false 
<= is less than or equal to
小於等於 5<=8 返回  true


Logical Operators
邏輯判斷符(Logical Operators)

Operator
符號 Description
描述 Example
案例 
&& and
與 x=6
y=3 
(x < 10 && y > 1) 返回 true
 
|| or
或 x=6
y=3 
(x==5 || y==5) 返回 false
 
! not
非 x=6
y=3 
!(x==y)返回true
 


其他操作符:

三元操作符、錯誤抑制操作符、執行操作符、數組操作符、類型操作符

運算符"?"前的表達式

如果一個包含二元運算符的表達式出現在三元運算符" ? : "的"?"之前,那麼應該給表達式添上一對圓括號。例如:
(x >= 0) ? x : -x;

下面我們來看一個簡單的?號表達式實例

 代碼如下 復制代碼 
<?

$a='http://www.zhutiai.com/zhuti/c7/';

echo $a?'true':'false';

輸出結果為 trur;

再看

if( $a )

{

   echo 'true';

}

else

{

   echo 'false';

}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved