日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php的两种复合数据类型是什么意思_2.4PHP复合数据类型:数组和对象

發布時間:2023/12/10 php 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php的两种复合数据类型是什么意思_2.4PHP复合数据类型:数组和对象 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Posted by 撒得一地 on 2015年9月29日 in PHP入門教程

國外穩定加速器推薦

vypr |

Nord

PHP中復合數據類型包括兩種,即數組和對象。

array(數組):一組數據的集合。

object(對象):對象是類型的實例,使用new命令來創建。

數組(array)

數組是一組數據的集合,它把一系列數據組織起來,形成一個可操作的整體。數組中可以包括很多數據類型,如字符串,整型,對象,數組,資源等。

PHP中的數組實際上是一個有序映射,映射是一種把values關聯到keys的類型。數組中的每個數據稱為一個元素,元素包括索引(鍵名)和值兩個部分。數組中的值還可以再是數組,這樣就形成了多維數組。

定義數組的語法格式如下:

$array = ('value1','value2'......)

$array[key] = 'value'

$array = array(key1=>value1,key2=>value2......)

元素的索引(key)可以由數字或字符串組成,元素的值(value)可以是任意類型的值。

其中,參數key是數組元素的下標,value是數組下標所對應的元素。所以,數組其實用逗號分隔的鍵(key) => 值(value)對。

最后一個數組單元之后的逗號可以省略,例如常用array(1,2)而不是array(1,2,)。對多行數組定義通常保留最后一個逗號,這樣要添加一個新單元時更方便。

自 5.4 起可以使用短數組定義語法,用 [] 替代 array()。

例子1:

$array ?= array(

"foo" ?=> ?"bar" ,

"bar" ?=> ?"foo" ,

);

// 自 PHP 5.4 起

$array ?= [

"foo" ?=> ?"bar" ,

"bar" ?=> ?"foo" ,

];

?>

此外 key 會有如下的強制轉換:

1. ?包含有合法整型值的字符串會被轉換為整型。例如鍵名 "8" 實際會被儲存為 8。但是 "08" 則不會強制轉換,因為其不是一個合法的十進制數值。

2. ?浮點數也會被轉換為整型,意味著其小數部分會被舍去。例如鍵名 8.7 實際會被儲存為 8。

3. ?布爾值也會被轉換成整型。即鍵名 true 實際會被儲存為 1 而鍵名 false 會被儲存為 0。

4. Null ?會被轉換為空字符串,即鍵名 null 實際會被儲存為 ""。

5. ?數組和對象不能被用為鍵名。堅持這么做會導致警告:Illegal offset type。

如果在數組定義中多個單元都使用了同一個鍵名,則只使用了最后一個,之前的都被覆蓋了。

例子2:

$array ?= array(

1 ? ? => ?"a" ,

"1" ? => ?"b" ,

1.5 ? => ?"c" ,//1.5被替換為1

true ?=> ?"d" ,//true被替換為1

);

var_dump ( $array );

?>

以上輸出:

array(1) {

[1]=>string(1) "d"

}

在數組中,如果想取得數組中某一個數的值,可以用數組名加下標(索引)的方法取得特定值。

如果對給出的值沒有指定鍵名,則取當前最大的整數索引值,而新的鍵名將是該值加一。如果指定的鍵名已經有了值,則該值會被覆蓋。

例子3:

$array = array(

1 => 3,

'a' => b,

1 => 4,

2 => 5,

5);

//如果想取得5,只要用$array[2]

echo $array[2]."
";

//修改$array[2]的值 將其值改為7

$array[2] = 7;

/*因為上面定義了兩個相同的索引1,不過后面

的后定義值會覆蓋前面的值,可以打印看下

*/

//print_r是php自定義函數,用于打印數組

print_r($array);

?>

上面的執行結果是先輸出5,然后打印出數組:

5

Array

(

[1] => 4

[a] => b

[2] => 7

[3] => 5

)

上面值為5沒定義鍵值,php會默認取之前最大的整數索引值的下一個整數(即原有的索引值加1)為其鍵值。php默認最小的整數索引值為0。

要修改某個值,通過其鍵名給該單元賦一個新值。要刪除某鍵值對,對其調用 unset() 函數。

例子4:

$arr ?= array( 5 ?=> ?1 , ?12 ?=> ?2 );

//將索引為5的值1改為42

$arr [ 5 ] = ?42 ;

//刪除數組中索引5和其對應的值

unset( $arr [ 5 ]);

//刪除整個數組

unset( $arr );

?>

對象(object)

php中應用到的編程方法有兩種:面向過程和面向對象。面向對象是模擬現實世界來進行編程的一種方法。

要創建一個新的對象 object ,使用 new 語句實例化一個類:

class ?foo

{

function ?do_foo ()

{

echo ?"Doing foo." ;

}

}

$bar ?= new ?foo ;

$bar -> do_foo ();

?>

這部分放在后面講解。

... other posts by psz1992

總結

以上是生活随笔為你收集整理的php的两种复合数据类型是什么意思_2.4PHP复合数据类型:数组和对象的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。