Blogger Information
Blog 35
fans 0
comment 1
visits 42601
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
0417数组的操作
魏先生的博客
Original
777 people have browsed it
<?php
/*
 * while有两种,一种先条件在输出代码,二种是先输出代码在条件
 * 
 */
//先来个for循环
for($i=0;$i<10;$i++){
	
	if($i<9){
		print_r($i.'<');
	}else{
		print_r($i);
	}
	
}

echo '<hr>';
	
//while先条件  其实跟for循环很类似
$i=0;//初始条件
while($i<10){
	echo $i<9 ? $i.',':$i;
	
	$i++;//更新条件,没有将进入死循环
}	
echo '<hr>';
//后条件	跟for循环有点差异
$i=0;
do{
	echo $i<9 ? $i.',' : $i;
		$i++;
}while($i<10);

对循环语句的理解,for是正常的.

while的入口和出口是不一样的,

入口判断类型的话,如果入口条件不成立,他下面的代码是不执行的,出口判断则相反输出一个条件尽管是不成立的.

我们一般都是用入口判断的多一点.while用的多,其他用的少甚至for用的就没那么多.

<meta charset="UTF-8"/>
<?php
/*
 * 常用的数组函数
 * 重点:功能,场景,参数,返回值
 * 1.键值操作 6个
 * 2.指针操作8个(也可以说巡航操作)
 */
echo '<pre>';
$user = ['name'=>'新明','sex'=>'man','age'=>'28岁','adds'=>'New York'];
print_r($user);

//一.键值函数
//in_array(value,array);判断某个值在不在数组中 返回的是布尔值
echo in_array('新明',$user)? '存在' : '不存在';//判断值是否存在
echo '<br>';
echo array_key_exists('name',$user) ? '存在' :'不存在';//判断键是否存在

print_r(array_values($user));//以索引的方式返回数组的值
echo '<br>';
print_r(array_keys($user,'新明'));//以索引的方式返回数组的键,还可以返回制定的键
echo '<hr>';
print_r(array_search('新明',$user));//以字符串的方式返回键
echo '<hr>';
print_r(array_flip($user));

echo '<hr>';
	echo '<hr>';
		echo '<hr>';
//数组内部指针操作
$a = count($user);//判断有几个数组
echo $a;
echo '<hr>';
	
echo key($user);
echo '<hr>';
	echo current($user);
echo '<hr>';
	
next($user);//数组的指针下移
echo key($user);
echo '<br>';
echo current($user);
echo '<br>';
print_r(next($user));
echo key($user);
echo '<br>';
echo current($user);

echo '<br>';
print_r(next($user));//下一个
echo key($user);
echo '<br>';
echo current($user);

echo '<hr>';
reset($user);//重置
print_r($user);
echo key($user);
echo '<br>';
echo current($user);

echo '<hr>';
end($user);//最后一个
echo key($user);
echo '<br>';
echo current($user);

echo '<hr>';
prev($user);//上一个
echo key($user);
echo '<br>';
echo current($user);

reset($user);
echo '<hr>';
//each();返回索引与关联
list($key,$values) = each($user);
echo $key,'=>'.$values;

echo '<hr>';
list($key,$values) = each($user);
echo $key,'=>'.$values;

echo '<hr>';
list($key,$values) = each($user);
echo $key,'=>'.$values;
echo '<hr>';echo '<hr>';
	
reset($user);
while(list($key,$values) = each($user)){//使用while循环来处理
	echo $key,'=>'.$values.'<br>';
}

 一、键与值的操作(6个)

1. in_array(value, array): val是否在array中,返回布尔值

2. array_key_exists(key,array):key是否在array中,返回布尔值

3. array_values(array): 以索引方式返回array值部分

4. array_keys(array[,value]): 以索引方式返回array键部分,还可返回指定值的键

5. array_search(value, array): 以字符串方式返回指定值的键

6. array_filp(array):键值对调

 二、数组内部指针(巡航)操作(8个)

1. key(array):返回当前元素的键 

2. current(array):当前元素的值,pos()为同名函数

3. next(array):指针下移,指向下一个元素,返回当前值

4. reset(array):指针复位,指向第一个元素,并返回它的值

5. end(array):指针移动最后一个元素上

6. prev(array):指针向前移动一位,并返回当前元素的值

7. each(array):返回当前元素的键值的索引与关联描述的数组,并自动下移指针

8. list($a,$b,...):将索引数组中的值,赋值给一组变量

数组的堆栈与队列:堆栈是从数组的开头或末尾的一端来进行增加删除,队列可以是两边都可以

//用array_splice增加字段

$color1 = ['a'=>'white','b'=>'black','c'=>'blue','d'=>'red'];

$color2 = ['e'=>'orange','f'=>'green'];

array_splice($color1,4,2,$color2);//从数组1的第四个开始删除 等于没有删除,然后增加数组2的字段

print_r($color1);

//用array_splice删除字段
$color1 = ['a'=>'white','b'=>'black','c'=>'blue','d'=>'red'];
array_splice($color1,2);//保留前面2个
print_r($color1);
//用array_splice修改字段
$color1 = ['a'=>'white','b'=>'black','c'=>'blue','d'=>'red'];
$color2 = ['a'=>'orange','b'=>'green'];
array_splice($color1,0,2,$color2);//从数组1的0开始 删除2个,数组2插进去字段
print_r($color1);
echo '<hr>';echo '<hr>';
$a1=[0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird"];
$a2=[0=>"Tiger",1=>"Lion"];
print_r(array_splice($a1,0,2,$a2));//删除的
print_r($a1);//保留的值

array_splice($arr1,strat,length,$arr2);

<meta charset="UTF-8"/>
<?php
	
$city = ['故宫', '东方明珠', '小蛮腰', '世界之窗', '火锅', '冰雕'];
echo '<table border="1" cellpadding="5" cellspacing="0" width="500">';
echo '<caption>for城市信息表</caption>';
echo '<tr bgcolor="yellow"> <th>北京</th><th>上海</th><th>广州</th><th>深圳</th><th>重庆</th><th>吉林</th></tr>';
    for($i=0;$i<count($city);$i++){
    	echo '<th>'.current($city).'</th>';
    	next($city);
    }
echo '</table>';

echo '<hr>';echo '<hr>';echo '<hr>';
$city = ['故宫', '东方明珠', '小蛮腰', '世界之窗', '火锅', '冰雕'];
echo '<table border="1" cellpadding="5" cellspacing="0" width="500">';
echo '<caption>while城市信息表</caption>';
echo '<tr bgcolor="#1bed7e"> <th>北京</th><th>上海</th><th>广州</th><th>深圳</th><th>重庆</th><th>吉林</th></tr>';
    $i=0;
    while($i<count($city)){
    	echo '<th>'.current($city).'</th>';
    	next($city);
    	$i++;
    }
echo '</table>';

echo '<hr>';echo '<hr>';echo '<hr>';
$city = ['北京', '上海', '广州', '深圳', '重庆', '吉林'];
$adds = ['故宫', '东方明珠', '小蛮腰', '世界之窗', '火锅', '冰雕'];
echo '<table border="1" cellpadding="5" cellspacing="0" width="500">';
echo '<caption>foreach城市信息表</caption>';
echo '<tr bgcolor="#00eeee">';
	foreach ($city as $value) {
    echo '<th align="center">'.$value.'</th>';
}
	
echo '</tr>';
echo '<tr>';
foreach ($adds as $value) {
    echo '<td align="center">'.$value.'</td>';
}
echo '</tr>';
echo '</table>';

用多种循环来写循环,感觉foreach最好用  遍历循环可以省很多代码,很实用

Correction status:Uncorrected

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post