Php 通过特定数组元素循环
我有一个表,每行包含5列,其中可能包含图像文件名,也可能不包含图像文件名。假设我已检索该行并将其放入assoc数组中。我想循环并将这些图像文件名(COL可能会填充,也可能不会全部填充)回显到html标记中,但前提是该列中包含图像文件名。还有比这更好的方法吗Php 通过特定数组元素循环,php,Php,我有一个表,每行包含5列,其中可能包含图像文件名,也可能不包含图像文件名。假设我已检索该行并将其放入assoc数组中。我想循环并将这些图像文件名(COL可能会填充,也可能不会全部填充)回显到html标记中,但前提是该列中包含图像文件名。还有比这更好的方法吗 for ($i = 1; $i < 6; $i++){ if($item_array['image_' . {$i}]{ echo "<li><img src=\"images/work-items/$item_arr
for ($i = 1; $i < 6; $i++){
if($item_array['image_' . {$i}]{
echo "<li><img src=\"images/work-items/$item_array['image_' . {$i} . '.jpg'\"/></li>"
}
($i=1;$i<6;$i++)的{
if($item_数组['image_u.{$i}]{
回声“”
}
你的语法到处都是:
for ($i = 1; $i < 6; $i++){
if(isset($item_array['image_' . $i])){
echo '<li><img src="images/work-items/'. $item_array['image_' . $i] . '.jpg"/></li>';
}
}
($i=1;$i<6;$i++)的{
if(isset($item_数组['image.'$i])){
回音“”;
}
}
你的语法到处都是:
for ($i = 1; $i < 6; $i++){
if(isset($item_array['image_' . $i])){
echo '<li><img src="images/work-items/'. $item_array['image_' . $i] . '.jpg"/></li>';
}
}
($i=1;$i<6;$i++)的{
if(isset($item_数组['image.'$i])){
回音“”;
}
}
if括号未闭合。也没有分号。我猜这是伪代码,所以我的观点没有意义。请尝试if(!empty($item_数组['image.'.{$i}]){
@Asad:或者for括号未闭合。:)您的解决方案正常(细节除外),你想要什么更好?简单一点。如果列计数不太可能改变,如果你没有在代码中写43次,那么就硬编码,没有pb。你的If括号是未闭合的。也没有分号。我猜这是伪代码,所以我的观点没有意义。试试If(!empty($item_数组['image.'{$i}]){
@Asad:或for括号未闭合。:)您的解决方案没有问题(细节除外),您希望哪一个更好?简单点。如果列计数不太可能更改,并且如果您没有在代码中写入43次,则对其进行硬编码,没有pb。“isset”是否有什么区别吗?我认为填充的数组元素无论如何都会等于TRUE?如果某个数组索引不存在,而您试图输出它,PHP会发出警告通知。我猜它一直存在。无论如何,如果您想检查这种情况,最好使用!empty()
但我不会尝试输出空数组索引,因为条件是只有在为真/填充的情况下它才会被echo'd…?如果使用if($item_数组['image'.$I]),如果“'image'.$I”不作为数组索引存在,它将抛出警告。“isset”是否有什么区别吗?我认为填充的数组元素无论如何都会等于TRUE?如果某个数组索引不存在,而您试图输出它,PHP会发出警告通知。我猜它一直存在。无论如何,如果您想检查这种情况,最好使用!empty()
但我不会尝试输出空数组索引,因为条件是只有在为真/填充的情况下才会返回…?如果使用if($item_数组['image.'$I]),如果“'image.'$I”不作为数组索引存在,它将抛出警告。