php中。数组是很常用的。对于数组与字符串和变量的转换,回调等。要多多练习才能理解透彻
以下是我的代码
<?php echo '<h3>数组于字符串,变量的转换</h3>'; list($name,$age,$money)=['测试',20,6000];//第一种写法,只能用在索引数组上 echo "我叫:{$name},年龄:{$age},月薪:{$money}元"; echo "<hr>"; $test=['id'=>10,'name'=>'测试','age'=>16]; @list($key,$value)=each($test);//第二种写法.只能获取到一个数据 echo $key,'<br>',$value,"<br>"; echo "<hr>"; extract($test);//将关联数组转换为变量 echo "我叫:{$name},年龄:{$age},编号:{$id}"; echo "<hr>"; $array=[]; $name_1='测试'; $age_1=20; $money_1=8000; $array=compact('name_1','age_1','money_1');//将变量转换为关联数组 echo var_export($array,true); echo "<hr>"; $launch='php|java|c++|go'; echo var_export(explode('|',$launch)),'<br>';//将字符串转换为索引数组,explode的第一个值跟你要转换的变量中的字符串的分隔符有关如php|java echo var_export(explode('|',$launch,3)),'<br>';//第三个值选填.是要输出的数组长度,如果填3,就是输出前面2个数据.最后一个输出剩下的数据,不会丢失数据 echo var_export(explode('|',$launch,-3));//第三个值选填.是要输出的数组长度,如果填-3,就是从数组的尾部删除掉3个数据后进行输出. echo "<hr>"; $nav=['首页','新闻','技术支持','server'=>'服务支持']; //echo '<pre>'; echo print_r($nav,true),'<br>'; echo implode('-',$nav),'<br>';//把数组变成字符串,关联或者索引数组都行 echo var_export(implode('|',$nav),true),'<br>'; //添加A标签 echo "<hr>"; echo "<a href=http://wwww.baidu.com>".implode("</a>|<a href=http://wwww.baidu.com>",$nav)."</a>","<br>"; echo "<hr>"; echo '<h3>数组的回调处理</h3>'; $arr=[0,10,'5',null,'0','','php',false,true]; $arr1=array_filter($arr);//删除数组中值为空的元素, echo var_export($arr1,true),"<br>"; echo "<hr>"; $arr2 = ['id'=>10,'name'=>'测试','age'=>16]; $arr3 =array_filter($arr2, function ($value){ return $value != 16;//使用匿名函数进行删除掉数组中的16. }); echo var_export($arr3),'<hr>'; $arr4=['首页','news'=>'新闻','技术支持','server'=>'服务支持','name'=>'admin']; array_walk($arr4,function ($value,$key){ echo $key,":",$value,"<br>"; });//对数组中的建值进行处理,第一个是值,第二个是键. echo "<hr>"; $arr5=['news'=>'新闻','name'=>'admin','首页','技术支持','server'=>'服务支持']; //下面这个写法在function ($value, $key,$news),中的第三个值,只能判断arr5数组的开头第一个值 //array_walk($arr5, function ($value, $key,$news) { // if ($value != $news) { // exit('<p style="color: red">您的选项错误</p>'); // } else { // exit($key.':'.$value); // } // //},'新闻'); echo "<br>","<hr>"; echo '<h3>for函数遍历数组</h3>'; $arr6=['首页','新闻','技术支持','服务支持'];//只能用在索引数组上 $arr7=""; for ($i=0; $i<count($arr6); $i++) { $arr7.=$arr6[$i].'--' ; }; echo rtrim($arr7,'--'),'<hr>';
点击 "运行实例" 按钮查看在线实例