我试图输出字符串以形成图像路径,字符串保存在嵌套数组中的最深层。
我的循环在这个级别上迭代所有数组内容,但是只输出数组内容的第一个字母,我不知道原因。
所以我需要一些帮助,这是我的.
数组转储:
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,我为数组中的每个元素打印了一行。
完整的路径信息还没有出现,我只是想先得到动态数据。
有人能帮忙吗?非常感谢。
发布于 2013-12-14 17:23:19
您将$rag视为数组而不是字符串(它就是这样的),因此$rag将返回字符串中的第一个字符。
为什么会这样呢?如果我们回想一下C,我们就会记住一个字符串只是一个char数组,这在某种程度上已经被移植到PHP中了,因此将一个字符串看作数组是完全可行的:)
https://stackoverflow.com/questions/20585767
复制相似问题