Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-获取foreach外部图像URL的值?_Php - Fatal编程技术网

PHP-获取foreach外部图像URL的值?

PHP-获取foreach外部图像URL的值?,php,Php,我有这个php代码来检查图像是否存在 foreach($pic_switch as $pic_switch_key => $pic_switch_value) { if ($pic_switch_value == "no-image") { $img_url = 'http://www.reuters.com/resources_v2/images/masthead-logo.gif'; } else { $img_url = $img_location . $pic_switch_key

我有这个php代码来检查图像是否存在

foreach($pic_switch as $pic_switch_key => $pic_switch_value)
{
if ($pic_switch_value == "no-image")
{
$img_url = 'http://www.reuters.com/resources_v2/images/masthead-logo.gif';
}
else
{
$img_url = $img_location . $pic_switch_key . '.jpg';
}
}   
上面的代码非常有效

我想在foreach外部回显$img_url。我试过:

echo '<pre>'.print_r($img_url,true).'</pre>';  
echo''。打印($img\u url,true)。'';

但它只给出最后一张图片的URL。我想显示所有图像的URL。我希望在Foreach外部显示所有变量,而不是在其中回显URL。

当您以这种方式使用
Foreach
时,最后一个变量将只存储在
$img\u URL
中。所以用这种方式:

foreach($pic\u开关作为$pic\u开关\u键=>$pic\u开关\u值)
{
如果($pic_开关_值==“无图像”)
{
$img\u url='1http://www.reuters.com/resources_v2/images/masthead-logo.gif';
}
其他的
{
$img_url=$img_位置。$pic_开关_键。“.jpg”;
}
回显“”。打印($img\u url,true)。“”;
}

我不明白为什么不能在循环中回送,但一种方法是在循环中构建字符串,然后在脚本中回送它


稍后在for循环中构建一个URL数组并进行回送会更整洁。

为什么,foreach有什么问题?唯一的解决方法是将所有URL添加到一个数组中。。。然后,您必须再次使用foreach等工具来完成该操作。(或者你可以把它添加到一个巨大的字符串中,但到底是为了什么目的呢?)我更喜欢在foreach之外使用它——出于各种原因,因为我试图实现的目标。也许你应该解释一下你正在尝试做什么。现在,这个要求毫无意义。除了在某种循环中,您还会如何处理多个元素?我想在上传图像文本框旁边显示一个上传图像。我希望上传后图像显示在上传图像文本框旁边,我不希望在foreach中输入或处理上传图像输入。这应该很容易做到-但如何做到这一点取决于如何呈现这些上传图像输入的细节。在当前状态下,我们无法回答您的问题。感谢您的帮助。尽管我希望在foreach外部回显$img_url。这是怎么做到的?那么你需要一个长字符串。而不是这一行:
$img\u url=$img\u位置$pic_开关_键。jpg',使用
$img\u url.=$img\u位置$pic_开关_键。jpg'显示的图像url但在它告诉我之前-未定义变量:img_url显示的图像url但在它告诉我之前-未定义变量:img_url-但定义了img_url。需要帮忙吗?
foreach ($pic_switch as $pic_switch_key => $pic_switch_value)
{
    if ($pic_switch_value == "no-image")
    {
        $img_url = 'http://www.reuters.com/resources_v2/images/masthead-logo.gif';
    }
    else
    {
        $img_url = $img_location . $pic_switch_key . '.jpg';
    }
    echo '<pre>' . print_r($img_url, true) . '</pre>';
}