Blogger Information
Blog 30
fans 0
comment 0
visits 22472
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
8.24数组与字符串,变量转换
归宿的博客
Original
577 people have browsed it
  1. 数组与字符串,变量之间的转换

<?php
/**
 * 数组与变量与字符串之间的转换
 */
//1.list():吧数组中的元素专为变量   适合用在索引数组上
list($name,$course,$grade)=['小龙女','php',80];
//$name='小龙女';
//$course='php';
//$grade=80;
echo $name.'的'.$course.'课程的成绩是:'.$grade.'<br>';

//2.extract($arr,$flag):关联数组转为变量  适合用在关联数组上
$arr = ['id'=>1,'name'=>'杨过','sex'=>'男','salary'=>8000];
//extract():返回变量的数量
echo var_export(extract($arr).'<br>');
echo '我的id'.$id,'姓名:'.$name,'性别:'.$sex,'工资是:'.$salary.'<br>';

//3.compact():将变量转为数组  适用关联数组
$name = '陈近南';
$faction = '天地会';
$position = '总舵主';
echo var_export(compact('name','faction','position'));
echo '<br>';

//4.explode(): 将字符串转换数组  (参数1:用什么切除;2:要切除的变量;3:截取位数,可以试负数)
$lang='html,css,php,javascript,mysql';
echo var_export(explode(',',$lang)).'<br>';
echo var_export(explode(',',$lang,3)).'<br>';

//5.implode($glue,$arr):将分散的数组拼接起来
$array = ['首页','公司新闻','公司介绍','联系我们'];
echo var_export(implode($array),true),'<br>';
echo var_export(implode('|',$array),true),'<br>';
//添加<a>转为导航
echo var_export('<a href="">'.implode('</a>|<a href="">',$array).'</a>');

    2.数组元素的回调处理

<?php
/**
 * 数组的回调处理
 * 将一个函数作为参数进行传递就是进行回调
 * array_filter($arr,$callback)
 * array_walk($arr,$callback())  //和上面有区别
 */
//1.array_filter():回调处理数组中的每个元素的值,仅返回为true的元素
$arr=[5,0,'',null,29,'php',false];
echo '<pre>';
echo var_export($arr).'共有'.count($arr).'<br>';
//'',0,null,false  :false过滤false字符串
$arr2=array_filter($arr);
echo var_export($arr2).'<br>';
//非常适合删除数组中空的元素

//传一个回调:匿名函数
function hello()
{
    return 'abc';
}
hello();
//匿名函数,赋给变量,直接用变量名调用,属于一次性函数,非常适合当作参数来使用
$hello=function()
{
    return 'abc';
};
$hello();


//用回调来删除
$arr3=['html','css','php'];
$arr4=array_filter($arr3,function($value){
   return $value !='css';
});
echo var_export($arr4).'<br>';

//2.array_walk():对元素中的键和值进行重组
$arr=['name'=>'admin','email'=>'admin@php.cn'];
echo var_export($arr,true),'<br>';
//进行格式化输出
array_walk($arr,function($value,$key){
    echo $key,'>'.$value.'<br>';
});
echo '<hr>';

//回调的第三个参数的用法
array_walk($arr,function($value,$key,$name){
    //如果当前的用户名是admin,则授权查看,否则拒绝
    if($value != $name){
        exit( '无权查看');
    }else{
        exit($key.'>'.$value.'<br>');
    }
},'admin');//'admin'自动和

    3.用for()循环来遍历关联数组

//for()
$rel='';
for ($i=0;$i<count($arts);$i++){
    $rel .= $arts[$i].'---';
}


Correction status:qualified

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