我想要只回显值名称no all。
我的阵列:
$file_list[] = array(
'name' => $CI->upload->file_name,
'file' => $CI->upload->upload_path.$CI->upload->file_name,
'size' => $CI->upload->file_size,
'ext' => $CI->upload->file_ext,
'image_type' => $imageVar->image_type,
'height' => $imageVar->height,
'width' => $imageVar->width
);
}
我的foreach:
foreach($upload_data as $file) {
echo '<li><ul>';
foreach ($file as $item => $value) {
echo '<li>'.$item.': '.$value.'</li>';
}
echo '</ul></li>';
}
现在输出:
- 名称:Chrysanthemum19.jpg
文件: D:/xampp/htdocs/Siran-mehdi/uploads/Chrysanthemum19.jpg
尺寸: 858.78
分机:.jpg
image_type:jpeg
高度:768
宽度:1024
- 名称:Desert19.jpg
文件:D:/xampp/htdocs/Siran-mehdi/uploads/Desert19.jpg
尺寸:826.11
分机:.jpg
image_type:jpeg
高度:768
宽度:1024
我想要这个输出:
Chrysanthemum19.jpg,Desert19.jpg
见全班和控制器
class Multi_upload(libraries) CI_Controller
尊重
答案 0 :(得分:1)
$names = array();
foreach ($file_list as $file) {
$names[] = $file['name'];
}
echo implode(',', $names);
使用PHP5.3,您可以将其压缩一点
echo implode(',', array_map(function ($file) {
return $file['name'];
}, $file_list);
但两者之间没有语义差异。
答案 1 :(得分:1)
您正在打印所有文件信息数据。您只想打印它的名称。这里:
foreach($upload_data as $file) {
echo '<li>' . $file->name . '</li>';
}
答案 2 :(得分:1)
尝试
foreach($upload_data as $file) {
echo '<li><ul>';
foreach ($file as $item => $value) {
if ($item == 'name'){
echo '<li>'.$item.': '.$value.'</li>';
}
}
echo '</ul></li>';
}
Tjeu
答案 3 :(得分:0)
使用:
foreach($upload_data as $file) {
echo '<li><ul>',$file['name'],'</ul></li>';
}
答案 4 :(得分:0)
尝试这样的事情:
foreach($upload_data as $file) {
foreach ($file as $item) {
$return[] = $file['name'];
}
}
echo implode(",",$return);
$to_store_in_db = serialize($return);
添加序列化
答案 5 :(得分:0)
首先,您需要找到输出文件名的循环部分:
echo '<li>'.$item.': '.$value.'</li>';
您只希望在$item
等于'name'时显示该值。你可以在这样的代码中表达:
$file['name']
然后,消除代码中对所需输出无贡献的所有部分。您的新代码可能如下所示:
$output = array();
foreach($upload_data as $file) {
$output[] = $file['name'];
}
echo implode( ',' $output );