PHP学习 Class one

<?php
	//Class one;
	//main: array
	//感谢学长的帮助 博客地址:http://blog.csdn.net/imlander/article/details/51384059
	//部分内容来自w3school.com
	//1.1将二维数组转化为一维数组
	/*
		将二维数组转化为一位数组的方法有很多,从c语言中最基础的数组的遍历即可做到这一点。
		那么抛去这一种方法,php还为我们准备了很多方法例如 
		array column() 中文:数组列
		可以返回输入数组中某个单一列的值
		具体功能参见http://www.w3school.com.cn/php/func_array_column.asp
		foreach() 中文:每一个
		可以遍历数组中的每一个值
		具体功能参见http://www.jb51.net/article/38956.htm
		说这是三种办法其实只有两种
		遍历:
			自己遍历和foreach()遍历
		php自带取数组的一列:
			array column() 适合数据表单
	*/
	//for example
	//自己遍历:
	echo "自己遍历: <br>";
	$a=array();//定义数组a
	for($i=0;$i<3;$i++){
		for($j=0;$j<3;$j++){
			$a[$i][$j]=$i*3+$j;//对数组赋值
			
		}
	}for($i=0;$i<3;$i++){
		for($j=0;$j<3;$j++){
			echo $a[$i][$j];//对数组赋值
		}
	}
	echo '<br>';
	//foreach遍历:
	echo "foreach遍历: <br>";
	$a = array( array('name'=>'Shi Jinrong','weixin'=>'imland'),
				array('name'=>'Zhang Yunming','weixin'=>'azure1cloud'),
				array('name'=>'Yu haijuan','weixin'=>'yuhaijuan0824'));
	$names=array();//定义数组names
	$weixins=array();//定义数组weixins
	foreach ($a as $key=> $value) {//遍历数组a取其每一项key值赋予$key取其value值赋予value
		$names[$key] = $value['name'];
  		$weixins[$key] = $value['weixin'];
	}
	foreach ($names as $value) {
		echo "$value <br>";
	}
	foreach ($weixins as $value) {
		echo "$value </br>";
	}
	//array column()
	echo "array column(): <br>";
	$a = array( array('name'=>'Shi Jinrong','weixin'=>'imland'),
				array('name'=>'Zhang Yunming','weixin'=>'azure1cloud'),
				array('name'=>'Yu haijuan','weixin'=>'yuhaijuan0824'));
	$names=array_column($a, 'name');
	$weixins=array_column($a,'weixin');
	foreach ($names as $value) {
		echo "$value <br>";
	}
	foreach ($weixins as $value) {			
		echo "$value </br>";
	}
	//1.2一维数组转二维
	/*
		同样有最基本的遍历分法,以至于此后的所有操作都可以使用遍历的方法解决,在此不再赘述。
		但是作为对表格的操作php同样有相应的函数操作存在
	*/
	//array_chunk() 中文:数组块 
	//把一个数组分割为新的数组块
	//具体功能参考 http://www.w3school.com.cn/php/func_array_chunk.asp
	$a = array('0','1','2','3','4','5','6','7','8','9');
	$b = array_chunk($a, 5);
	for ($i=0; $i < 2; $i++) {
		for ($j=0; $j < 5; $j++)
			echo $b[$i][$j];
		echo "<br>----------以上是第 $i 行--------<br>";
	}
	//1.3数组内添加或删除元素
	//array_pop()和array_push()类同c++的STL
	//array_pop()删除array中最后一个元素(出栈)http://www.w3school.com.cn/php/func_array_pop.asp
	//array_push()向array后推入一个或多个元素(入栈) http://www.w3school.com.cn/php/func_array_push.asp
	$a = array('0','1','2','3');
	array_pop($a);
	print_r($a);
	echo '<br>';
	array_push($a,'3','4','5');
	print_r($a);
	echo '<br>';
	//1.4数组间操作
	/*
		array_diff()	比较数组,返回差集(只比较键值)。
		array_diff_assoc()	比较数组,返回差集(比较键名和键值)。
		array_diff_key()	比较数组,返回差集(只比较键名)。
		array_diff_uassoc()	比较数组,返回差集(比较键名和键值,使用用户自定义的键名比较函数)。
		array_diff_ukey()	比较数组,返回差集(只比较键名,使用用户自定义的键名比较函数)。
		array_intersect()	比较数组,返回交集(只比较键值)。
		array_intersect_assoc()	比较数组,返回交集(比较键名和键值)。
		array_intersect_key()	比较数组,返回交集(只比较键名)。
		array_intersect_uassoc()	比较数组,返回交集(比较键名和键值,使用用户自定义的键名比较函数)。
		array_intersect_ukey()	比较数组,返回交集(只比较键名,使用用户自定义的键名比较函数)。
		array_udiff()	比较数组,返回差集(只比较值,使用一个用户自定义的键名比较函数)。
		array_udiff_assoc()	比较数组,返回差集(比较键和值,使用内建函数比较键名,使用用户自定义函数比较键值)。
		array_udiff_uassoc()	比较数组,返回差集(比较键和值,使用两个用户自定义的键名比较函数)。
		array_uintersect()	比较数组,返回交集(只比较值,使用一个用户自定义的键名比较函数)。
		array_uintersect_assoc()	比较数组,返回交集(比较键和值,使用内建函数比较键名,使用用户自定义函数比较键值)。
		array_uintersect_uassoc()	比较数组,返回交集(比较键和值,使用两个用户自定义的键名比较函数)。
		具体用法不再举例详情参见	http://www.w3school.com.cn/php/php_ref_array.asp		
	*/
?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值