我正在尝试输出字符串以形成图像路径,字符串保存在最深层的嵌套数组中。
我的循环遍历此级别的所有数组内容,但只输出数组内容中的第一个字母,我无法弄清楚原因。
所以我需要一些帮助,这就是我所拥有的......
数组转储:
Array
(
[0] => Array
(
[p_name] => Shops
[p_startdate] => foo
[p_enddate] => bar
[p_elapsed] => hello
[p_rag] => Array
(
[0] => grayNodePng6160.png
[1] => grayNodePng6160.png
[2] => grayNodePng6160.png
[3] => grayNodePng6160.png
[4] => grayNodePng6160.png
[5] => grayNodePng6160.png
[6] => grayNodePng6160.png
[7] => grayNodePng6160.png
[8] => grayNodePng6160.png
)
)
)
控制器索引方法
public function index()
{
$data = array();
$data['splash_projects'] = $this->generate_projects();
$this->load->view('include/header');
$this->load->view('include/navigation');
$this->load->view('splash', $data);
$this->load->view('include/footer');
}
控制器辅助方法:
private function generate_projects(){
$projects = array(
array (
"p_name" => "Shops",
"p_startdate" => "foo",
"p_enddate" => "bar",
"p_elapsed" => "hello",
"p_rag" => array ('grayNodePng6160.png', 'grayNodePng6160.png','grayNodePng6160.png','grayNodePng6160.png','grayNodePng6160.png',
'grayNodePng6160.png','grayNodePng6160.png','grayNodePng6160.png','grayNodePng6160.png')
)
);
return $projects;
}
查看:
<?php if($splash_projects!==false):?>
<?php foreach ($splash_projects as $sproject):?>
<div class="container">
<div class="row">
<p class="section-paragraph">Project Name :<?php echo $sproject['p_name']?></p>
<p class="section-paragraph">Start Date: <?php echo $sproject['p_startdate']?></p>
<p class="section-paragraph">End Date: <?php echo $sproject['p_enddate']?></p>
<ul>
<?php foreach($sproject['p_rag'] as $rag):?>
<?php $x=0 ?>
<li><img class="section-paragraph">Overview: <?php echo $rag[$x] ?></img></li>
<?php endforeach?>
</ul>
</div>
</div>
<?php endforeach?>
<?php endif?>
这是输出 - 概述:g,我为阵列中的每个元素打印一行。
完整路径信息尚不存在我只是想先将动态数据输出。
有人可以帮忙吗?非常感谢。
答案 0 :(得分:0)
你将$ rag视为数组而不是字符串(就是这样),所以$ rag [0]将返回字符串中的第一个字符。
为什么?如果我们回想一下C,我们记得一个字符串只是一个char的数组,这在某种程度上被转移到PHP中,因此将字符串视为数组是完全可行的:)