Blogger Information
Blog 33
fans 0
comment 2
visits 37343
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
数组与变量字符转换,数组的切割和填充,数组的回调处理 2018/8/24
cxw的博客
Original
770 people have browsed it

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

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)

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