我有一个名为products的MySQL表,其中包含一列(images
)
此列中有许多文件名由[]
和,
分隔
像:
[image-1.jpg],[image-2.jpg],[image-4.jpg],[image-5.jpg]
依旧......
我希望能够提取图像文件名,使它们看起来像:
image-1.jpg
image-2.jpg
image-3.jpg
image-4.jpg
image-5.jpg
这是我目前的PHP:
<?php
$images = explode(',',$project['images']);
foreach($images as $image)
{
$display_image = substr($image, 1, -1);
?>
<tr>
<td><img src="/img/project-gallery/<?php echo $display_image; ?>" width="160px" /><br />
<input type="checkbox" name="current_images<?php echo $project["sequence"]; ?>" id="current_images<?php echo $project["sequence"]; ?>" value="image_id_checkbox_<?php echo $project["sequence"]; ?>" /></td>
</tr>
<?php
}
?>
所以我在每个图像下都有一个复选框,我希望能够从数据库中的images列中删除所选的[filename.extn],
。
例如,如果我检查image-1.jpg复选框,我希望图像列最终像:
image-2.jpg
image-3.jpg
image-4.jpg
image-5.jpg
答案 0 :(得分:0)
preg_split - 用正则表达式拆分字符串 这样做......
$images = preg_split("/[\[\],]+/", $project['images']);
答案 1 :(得分:0)
试试这个:
<?php
$string = '[image-1.jpg],[image-2.jpg],[image-3.jpg],[image-4.jpg],[image-5.jpg]';
$str_arr = explode(',', $string);
foreach($str_arr as $key => $value)
{
$value = trim($value, '[]');
echo $value."<br />";
}
?>
-
谢谢....