本文实例讲述了php实现根据字符串生成对应数组的方法,是比较实用的技巧。分享给大家供大家参考。具体方法如下:

先看看如下示例:

$config = array(

'project|page|index' => 'content',

'project|page|nav' => array(

array(

'image' => '1.jpg',

'name' => 'home'

),

array(

'image' => '2.jpg',

'name' => 'about'

)

),

'project|page|open' => true

);

?>

根据$config生成以下数组:

$result = array(

'project' => array(

'page' => array(

'index' => 'content',

'nav' => array(

array(

'image' => '1.jpg',

'name' => 'home'

),

array(

'image' => '2.jpg',

'name' => 'about'

)

),

'open' => true

)

)

);

?>

方法:使用eval实现:

$config = array(

'project|page|index' => 'content',

'project|page|nav' => array(

array(

'image' => '1.jpg',

'name' => 'home'

),

array(

'image' => '2.jpg',

'name' => 'about'

)

),

'project|page|open' => true

);

$result = array();

foreach($config as $key=>$val){

$tmp = '';

$keys = explode('|', $key);

for($i=0,$len=count($keys); $i

$tmp .= "['".$keys[$i]."']";

}

if(is_array($val)){

eval('$result'.$tmp.'='.var_export($val,true).';');

}elseif(is_string($val)){

eval('$result'.$tmp.'='.$val.';');

}else{

eval('$result'.$tmp.'=$val;');

}

}

print_r($result);

?>

输出结果:

Array

(

[project] => Array

(

[ page ] => Array

(

[index] => content

[nav] => Array

(

[0] => Array

(

[image] => 1.jpg

[name] => home

)

[1] => Array

(

[image] => 2.jpg

[name] => about

)

)

[open] => 1

)

)

)

希望本文所述对大家PHP程序设计的学习有所帮助。

php 根据数量创建数组,php实现根据字符串生成对应数组的方法相关推荐

  1. vba 跳到下一个循环_VBA野知识分享:从一个数组中取部分值生成新数组,不使用循环的思路...

    从一个数组中取部分值生成新数组,要实现此需求通常都是采用循环的方法来完成,那有没有更简易的思路呢? 借用jscript可以实现,直接取值,不用循环.例如从100000万中元素是取8000个值出来生成新 ...

  2. 输出英文字母java数组_JAVA语言之通过生成随机数组来转化为字母进行输出的类...

    本文主要向大家介绍了JAVA语言之通过生成随机数组来转化为字母进行输出的类,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. 今天又写了一个通过生成随机数组来转化为字母进行输出的类,但是 ...

  3. php把字符串变为数组_php怎么把字符串转换成数组?

    php怎么把字符串转换成数组?下面本篇文章给大家介绍一下PHP把字符串转换成数组的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. PHP中,将一个字符串转成数组,是使用非常频繁 ...

  4. java数组是否包含某字符串_js判断数组是否包含某个字符串变量的实例

    最近碰到一个这样的现象,后台返回的数据中,数组里面有一些有变量值,有一些没有变量值. 举个例子,比如后台返回的例子是这样的: var arr=[ { "status":" ...

  5. java字符串转换成字节数组_将Java字符串转换为字节数组

    我有一个要加密的字节数组,然后转换为字符串,以便可以传输. 当我收到字符串时,我必须将字符串转换回字节数组,以便可以对其进行解密. 我检查了接收到的字符串是否与发送的字符串(包括长度)匹配,但是当我使 ...

  6. c语言ip字符串分割成数组,将IP地址字符串分割成数组

    今天心血来潮准备写一个端口扫描器.记得之前写MFC程序里面CString类有个方法可以以某一字符分割CString对象,但是C++中string似乎没有这样的方法.所以我要自己实现一个方法(函数),将 ...

  7. 把一个字符串分割成数组 php_PHP怎么将字符串拆分成数组

    在日常项目开发过程中,较长的字符串可能需要被拆分成数组形式,以便被展现或用于判断验证.那么将字符串拆分成数组,也很容易实现,我们可以直接通过PHP中的explode函数来进行拆分. 下面我们就通过简单 ...

  8. c#将字符串转换为数组,在C#中将字符串转换为字节数组

    先决条件:如何在C#中声明和使用byte []? C#中的字符串到字节数组的转换 在C#中,可以使用Encoding将字符串转换为字节数组.方法,它接受字符串作为参数并返回字节数组.ASCII.Get ...

  9. Qt4_字符串、字节数组和变量

    字符串 我们将从 QString开始.每一个图形用户界面(GUI) 程序都会用到字符串,不仅仅是为用户界面,更多的是为数据结构所用. C++ 本身提供两种宇符串:传统的 C语言型的,以" \ ...

最新文章

  1. 如何利用ArcGis把经纬度转成shp数据
  2. 实现 strStr()
  3. 利用QT实现X轴为时间动态显示曲线
  4. 基于java springboot+mybatis学生学科竞赛管理管理系统设计和实现
  5. 信息学奥赛一本通 1127:图像旋转 | OpenJudge NOI 1.8 11:图像旋转
  6. 浅谈HTTP中Get与Post的区别_转
  7. 跨湖跨仓场景下如何实现海量数据分钟级分析
  8. STM32学习——TIM基本定时器
  9. android textview 必填,在android中如何使用Html渲染的方式实现必填项前面的*号
  10. TGARS 2019: What, Where, and How to Transfer in SAR Target Recognition Based on Deep CNNs ——学习笔记
  11. oracle 创建备份目录,Oracle rman创建和自动化备份
  12. 求解最长回文串 manachar算法
  13. 为什么不可以使用哈曼顿距离_声光色影俱佳,美也要与众不同,哈曼卡顿无线水晶4评测...
  14. c语言计算机二级常用库函数,2013年计算机二级C语言库函数的调用考点归纳
  15. 深入理解JVM虚拟机读书笔记——垃圾回收算法
  16. Go strings.ToLower函数
  17. HTML/CSS-花样边框案例
  18. Pycharm debug崩溃、长时间不响应 解决
  19. 创业起步阶段需要注意什么?
  20. Docker之API操作

热门文章

  1. 十大经典排序算法动画与解析(配代码完全版)
  2. MySQL中concat函数(连接字符串)
  3. Java SSM篇2——框架的基本认识
  4. mysql partition 性能_通过分区(Partition)提升MySQL性能
  5. hough变换直线检测_python+opencv实现霍夫变换检测直线
  6. python2中xrange比range优点_【Python面试】 说说Python中xrange和range的区别?
  7. Android Studio无线连接设备调试,比数据线更方便
  8. 单片机按键控制数码管c语言程序,基于单片机的按键控制LED数码管共阴极动态显示电路设计报告(毕业论文).doc...
  9. 1主5从mysql数据库_MySQL主从复制虽好,能完美解决数据库单点问题吗?
  10. java的一些题目,一些Java题目