① php中數組的分類有哪兩種
1、索引數組
有兩種創建索引數組的方法:
索引是自動分配的(索引從 0 開始):
$cars=array("porsche","BMW","Volvo");
2、關聯數組
關聯數組是使用您分配給數組的指定鍵的數組。
有兩種創建關聯數組的方法:
$age=array("Bill"=>"35","Steve"=>"37","Elon"=>"43");
(1)php判斷數組類型擴展閱讀
實用函數——
有相當多的實用函數作用於數組,參見數組函數一節。
注: unset() 函數允許取消一個數組中的鍵名。要注意數組將不會重建索引。
<?php
$a = array( 1 => 'one', 2 => 'two', 3 => 'three' );
unset( $a[2] );
/* 將產生一個數組,定義為
$a = array( 1=>'one', 3=>'three');
而不是
$a = array( 1 => 'one', 2 => 'three');
*/
$b = array_values($a);
// Now $b is array(0 => 'one', 1 =>'three')
?>
foreach 控制結構是專門用於數組的。它提供了一個簡單的方法來遍歷數組。
② php 把數組按條件分成不同的數組
$arr1=array("In/4833895_0001.jpg","In/4834113_0002.jpg","Out/4834223_0001.jpg","In/4834301_0003.jpg","Out/4834442_0002.jpg","In/4834520_0004.jpg","Out/4834598_0003.jpg","In/4834723_0005.jpg","Out/4834817_0004.jpg","In/4834863_0006.jpg","Out/4835004_0005.jpg","In/4835067_0007.jpg","Out/4835254_0006.jpg","Out/4835410_0007.jpg","Out/04835629_0008.jpg","Out/4835785_0009.jpg");
foreach($arr1as姿指備$k=>$val){
if(strpos($val,"In")===0){
跡毀$inArr[]=$val;
}else{
$outArr[]=$val;
}
}
print_r($inArr);
echo"<br>";
print_r($outArr);
Array
(
[0]=>In/4833895_0001.jpg
[1]=>In/4834113_0002.jpg
[2]=>In/4834301_0003.jpg
逗搏[3]=>In/4834520_0004.jpg
[4]=>In/4834723_0005.jpg
[5]=>In/4834863_0006.jpg
[6]=>In/4835067_0007.jpg
)
Array
(
[0]=>Out/4834223_0001.jpg
[1]=>Out/4834442_0002.jpg
[2]=>Out/4834598_0003.jpg
[3]=>Out/4834817_0004.jpg
[4]=>Out/4835004_0005.jpg
[5]=>Out/4835254_0006.jpg
[6]=>Out/4835410_0007.jpg
[7]=>Out/04835629_0008.jpg
[8]=>Out/4835785_0009.jpg
)
③ php如何查找數組中是否含有某個元素
1、in_array �0�2 ‘函數在數組中搜索給定的值。 in_array(value,array,type)type 可選。如果設置該參數為 true,則檢查搜索的數據與數組的值的類型是否相同。 2、array_key_exists array_key_exists() 函數判斷某個數組中是否存在指定的 key,如果該 key 存在,則返回 true,否則返回 false。array_key_exists(key,array) 3、array_search ‘array_search() 函數與 in_array() 一樣,在數組中查找一個鍵值。如果找到了該值,匹配元素的鍵名會被返回。如果沒找到,則返回 false。array_search(value,array,strict) 注意:在數據量不大的時候,比如小於1000,查找用哪一種都行,都不會成為瓶頸;當數據量比較大的時候,array_key_exists比較合適。當然這里array_key_exists佔用的內存比較大,經測算數組結構是: array(1, 2, 3, ..)和 array(1 = true, 2 = false, ..)他們內存使用比值為1:2;
④ php判斷是否為數組
$a=1;
if(is_array($a)){
echo'是數組';
}else{
echo'不是數組0';
}
⑤ php 判斷在不在數組中 in array
函數:in_array -- 檢查數組中是否存在某個值定義:bool in_array ( mixed needle, array haystack [, bool strict] )在haystack 中搜索 needle,如果找到則返回 TRUE,否則返回 FALSE。 如果第三個參數 strict 的值為 TRUE 則 in_array() 函數還會檢查 needle 的類型是否和 haystack 中的相同。 例子1. in_array() 例子<?php
$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
echo "Got Irix";}if (in_array("mac", $os)) {
echo "Got mac";}?> 第二個條件失敗,因為 in_array() 是區分大小寫的,所以以上程序顯示為: Got Irix 例子2. in_array() 嚴格類型檢查例子<?php
$a = array('1.10', 12.4, 1.13);
if (in_array('12.4', $a, true)) {
echo "'12.4' found with strict check\n";}if (in_array(1.13, $a, true)) {
echo "1.13 found with strict check\n";}?> 上例將輸出:1.13 found with strict check 例子3. in_array() 中用數組作為 needle<?php
$a = array(array('p', 'h'), array('p', 'r'), 'o');
if (in_array(array('p', 'h'), $a)) {
echo "'ph' was found\n";}if (in_array(array('f', 'i'), $a)) {
echo "'o' was found\n";}?
⑥ PHP 對象數組的篩選和判斷
手打不易,有用請採納。
$rArray = json_decode(json_encode($r),true);//通過json將對象轉換為數組。
foreach($rArray as $k => $v){
if($v['banji']==1){ //如果banji=1則求語文成績
echo "語文成績={$v['yuwen']}";
}elseif($v['banji']==2){ //如果banji=2則求數學成績
echo "語文成績={$v['shuxue']}";
}
if($v['xingming']=='x'){ //有一個姓名為$x是否在banji1
if($v['banji']==1){
echo "xingmign為x的是班級1";
}else{
echo "xingmign為x的不是班級1";
}
}
}