Blogger Information
Blog 14
fans 0
comment 0
visits 11146
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
数组变量字符串转换,数组元素回调,常用数组函数--2018年8月24日作业
悦派的博客
Original
892 people have browsed it

实例

<meta charset="UTF-8">
<?php
/**
 * 数组与变量与字符串之间的转换
 */

//1.list() 把数组中的元素转为变量: 用在索引数组上
$array=['html','css','php','javascript'];
list($html, $css, $php,$javascript) = $array;
echo '本次培训包括',$html,'.', $css,'.',  $php,'.', $javascript,'.',  '等等...<hr>';
//2. extract($arr, $flag): 关联数组转为变量
$arr1 = ['id'=>10, 'name'=>'刘','sex'=>'男','grade'=>100];
//extract():返回变量的数量
extract($arr1,EXTR_OVERWRITE);
echo '我的id:',$id,',姓名:',$name,',性别:',$sex,',综合成绩: ',$grade,'分<hr>';
//3.compact(): 将变量转为关联数组
$name = '淘宝';
$name2 = '京东';
$name3 = '拼多多';
$arr0 = compact('name','name2','name3');
echo '<pre>';
var_dump($arr0);
echo '<hr>';

//4.explode():将字符串转换数组
$lang = 'html,css,javascript,jquery,php,mysql';
echo var_export(explode(',',$lang,-4)),'<br>';//最常用的方式  -4代表干掉后面四个

//5.implode($glue, $arr)
$arr1 = ['首页','关于我们','产品展示','新闻资讯','案例展示','常见问题','荣誉资质','联系我们'];

echo var_export(implode('|',$arr1),true),'<br>';
//添加<a>转为导航的用法
echo var_export('<a href="#">'.implode('</a>|<a href="#">',$arr1).'</a>'),'<br>';

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例

<meta charset="UTF-8">
<?php
/**
 * 数组的回调处理
 * 将一个函数做为参数进行传递
 * 1. array_filter($arr, $callback)
 * 2. array_walk($arr, $callback())
 */
//1. array_filter():回调处理数组中的每个元素的值,仅返回结果为true的元素
$arr1 = ['0','5',0,'',20,null,false,'0.0','html'];
echo '<pre>';
echo '原始数组',var_export($arr1,true),',共有:',count($arr1),'个元素<hr>';
$arr2 = array_filter($arr1);
echo '新数组',var_export($arr2,true),',共有:',count($arr2),'个元素<hr>';
//适合删除数组中的空元素
//传入一个回调: 匿名函数
$arr3 = ['html','css','javascript','php'];
$arr4 =array_filter($arr3, function ($value){
    return $value !== 'php';//当传入值为php时,返回 false,array_filter会剔除这个数值
});
echo var_export($arr4),'<hr>';

//2. array_walk():对数组中每个元素的键和值进行处理
$arr = ['user'=>'admin','email'=>'admin@163.com','password' =>'adminpassword'];
echo var_export($arr, true), '<hr>';
//格式化
array_walk($arr, function (&$value, $key) {
    echo $key,':',$value,'<br>';
});
echo '<hr>';


// 回调的第三个参数的用法
function isAdmin(&$value, $key, $user) {
    if ($value != $user) {
        exit('您不是管理员,禁止查看');
    } else {
        exit('当前用户为:'.$key.':'.$value);
    }

}
array_walk($arr,'isAdmin' ,'admi');//第三个值第三个参数传递给 callback funcname

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例

<meta charset="UTF-8">
<?php
/**
 * 用for()循环来遍历关联数组
 */
$array = ['id' => 10,'name' => '刘','email' => '123@qq.com','age' => 28,'sex' => '男','salary' => 5000];
for($i=0;$i<count($array);$i++)
{
    echo key($array),'=>',current($array),'<br>';//key() current() 获取当前元素的键名。
    next($array);//next()指针下移
}

运行实例 »

点击 "运行实例" 按钮查看在线实例


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