Foreach in a variable

时间:2013-11-24 17:10:33

标签: php

我有这个PHP代码段:

<?php 
    $imageresults = get_image_big($string);
    foreach ($imageresults as $hasil) { ?>
      <img src="<?php echo $hasil['media']; ?>" />
    <?php } ?>

我想在变量中输出结果,但它不起作用...... 我试过了:

<?php

function bigimgx() {
    $imageresults = get_image_big($string);
    foreach ($imageresults as $hasil) { 
        echo "<img src=\"" . $hasil['media'] . "\" />";
    };
};

$result = bigimgx();
?>

知道我的错误可能在哪里?谢谢。

2 个答案:

答案 0 :(得分:0)

创建一个字符串并在每个循环中附加文本。然后返回该字符串,而不是回显它。

function bigimgx() {
    $imageresults = get_image_big($string);
    $return='';
    foreach ($imageresults as $hasil) { 

        $return.= "<img src=\"" . $hasil['media'] . "\" />";
    }
    return $return;
};

答案 1 :(得分:0)

目前,您只是echo循环内的结果。您需要return代替它。初始化一个用于存储HTML内容的变量,循环遍历数组并在循环执行结束后将HTML附加到变量和return

类似的东西:

function bigimgx() {
    $imageresults = get_image_big($string);
    $media = '';

    foreach ($imageresults as $hasil) { 
        $media .= "<img src=\"" . $hasil['media'] . "\" />";
    }

    return $media; 
}

$result = bigimgx();