博客列表 >数组与变量字符转换,数组的切割和填充,数组的回调处理 2018/8/24

数组与变量字符转换,数组的切割和填充,数组的回调处理 2018/8/24

cxw的博客
cxw的博客原创
2018年08月26日 12:25:12778浏览

通过今天学习,我掌握了数组与变量与字符之间的转换,数组的切割和填充,数组的回调等数组基本知识,以下是我的编程代码:

1,数组与字符串,变量之间的转换

实例

<meta charset="UTF-8">
<?php
/**
 * Created by PhpStorm.
 * User: admin
 * Date: 2018/8/25
 * Time: 17:05
 */
//list将数组中的元素转换为变量
$studentIno=['jack','15',100];
list($name,$age,$score)=$studentIno;
echo  $name,'他今年:'.$age,'岁了','这次考试成绩'.$score;
echo  '<br>';

//list将数组中的元素转换为变量
$studentIno=['jack','15',100];
list($name,$age,$score)=$studentIno;
echo $name,'他今年:'.$age,'岁了','这次考试成绩'.$score;
echo  '<hr>';

//extract() 的一种可能用法是将
// 返回的结合数组中的内容导入到符号表变量中去。
$age='男';
$account=['name'=>'小明','age'=>20,'hoppy'=>'篮球'];
extract($account,EXTR_PREFIX_SAME,"sex");
var_export( "$name, $age, $hoppy, $sex_age");
echo '<br>';
echo '共生成了:',var_export(extract($account),true),'个变量:<br>';
echo  '<hr>';


//compact();将变量转为数组
$name='陈近难';
$sex='男';
$address='浙江';
$arr=compact('name','sex','address');
echo  var_export($arr,true);
echo  '<br>';
echo  '<hr>';

//4,explode();将字符串转换数组
//如果 limit 是 0,则会被当做 1。
$language='html,css,javascript,jquery,php,mysql';
//以,好将字符串拼成数组
echo var_export(explode(',',$language)),'<br>';
//如果设置了 limit 参数并且是正数,则返回的数组包含最多 limit 个元素,而最后那个元素将包含 string 的剩余部分。
echo var_export(explode(',',$language,3)),'<br>';
//如果 limit 参数是负数,则返回除了最后的 -limit 个元素外的所有元素。
echo var_export(explode(',',$language,-1)),'<br>';

//implode — 将一个一维数组的值转化为字符串
$arr=['首页','公司新闻','公司首页','联系我们'];
echo  var_export(implode('|',$arr),true);
//添加<a>转为导航
echo var_export('<a href="#">'.implode('</a>|<a href="#">',$arr).'</a>'),'<br>';

运行实例 »

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

2,数组元素的回调处理

实例

<meta charset="UTF-8">
<?php
/**
 * 数组元素的回调处理
 *
 */
//创建一个数组自带三个空元素
$arr1 = [5, 0, 20,' ', 88, false, 'php',' '];
//输出原数据
echo  '原数组:'.var_export($arr1,true).'数组的个数:'.count($arr1).'<br>';

//删除数组中的空元素
  $arr2=array_filter($arr1);
echo  '删除空元素数组:'.var_export($arr2,true).'数组的个数:'.count($arr2).'<br>';

//传入一个回调,匿名函数
$studentName=['小军','小明','小红','老王兄'];

//用一个变量接收筛选结果
$result=array_filter($studentName,function($obj){
      return  $obj!='小红';
});
echo  '<hr>';
echo  var_export($result);
//2,array_walk();对数组中每个元素的键和值进行处理
$info=['小明'=>20,'小军'=>50,'小红'=>80,'name'=>'admin'];
echo '<br>';
//输出原数组
 echo '输出原数组:'.var_export($info,true).'<br>';
 //使用array_walk()函数进行操作数组
array_walk($info,function ($value,$key,$name){


//    if ($name!=$value)
//    {
//        exit('无权查看');
//    }else{
        if ($value>60)
        {
            echo  '以下是成绩合格清单:','姓名是:'.$key.'成绩是:'.$value.'<br>';

//        exit($key. ':'. $value).'<br>';
        }else
        {
            echo  '以下是成绩不合格清单:','姓名是:'.$key.'成绩是:'.$value.'<br>';
        }
    //}

},'admin');

运行实例 »

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

3,使用for循环输出关联数组


实例

<meta charset="UTF-8">
<?php
/**
 *使用for循环输出关联数组
*/

$student=['name'=>'小程','age'=>'18','sex'=>'男'];


//使用for循环输出关联数组,key返回键值,current返回当前的值
for($i=0 ; $i <count($student) ;$i++){
    echo key($student),'=>',current($student),'<br/>';
    next($student);
}
echo '<hr>';
echo 'foreach输出:','<br>';
//使用foreach循环输出键值对

foreach($student as $key=>$value)
{
    echo  $key.'=>'.$value;
}
echo '<hr>';

//使用while循环必须用reset重置一下
reset($student);
//使用while循环输出关联数组
while (list($key,$value)=each($student))
{
    echo  $key.'=>'.$value;

}
echo '<br>';

运行实例 »

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

总结:

1,数组与变量与字符之间的转换

a,extract:返回变量的数量

b,compact();将变量转为数组

c,explode();将字符串转换数组

d,implode — 将一个一维数组的值转化为字符串
2,数组的分割和填充

a,array_slice();从数组中指定位置,返回指定数量的元素(0表示第一个元素输出,

参数备注:第一个数组,第二个开始位置,第三,数组个数,负数从尾部删除数据)

b,array_chunk();将大数组分割为小数组

c,array_pad(),将数组用指定的数组填充到指定的长度 array_pad($arr,5,100)

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议