Foreach语句打印出错误的格式


Foreach Statement Printing Out Incorrect Format

首先,我在变量$magazine_issue_pages中存储了一个数组,如果打印该数组,则会显示以下内容。

Array ( [0] => http://104.131.209.93/wp-content/uploads/2015/02/1.jpg [1] => http://104.131.209.93/wp-content/uploads/2015/02/2.jpg [2] => http://104.131.209.93/wp-content/uploads/2015/02/3.jpg [3] => http://104.131.209.93/wp-content/uploads/2015/02/4.jpg [4] => http://104.131.209.93/wp-content/uploads/2015/02/back.jpg ) 1

因此,变量明确地存储数组。然而,当我把它放在foreach语句中时,它是不正确的。

这是我的PHP foreach语句

foreach ($magazine_issue_pages as $magazine_issue_page) {
    echo '<div style="background:url('.$magazine_issue_page.')"';
}

它正在HTML 中打印以下内容

<div div="" <="" <div="" style="background:url(http://104.131.209.93/wp-content/uploads/2015/02/1.jpg)"></div>

显然这不是我想要的哈。。。

寻找更多类似的东西

    <div style='background:url("http://104.131.209.93/wp-content/uploads/2015/02/1.jpg")'></div>
    <div style='background:url("http://104.131.209.93/wp-content/uploads/2015/02/2.jpg")'></div>
    <div style='background:url("http://104.131.209.93/wp-content/uploads/2015/02/3.jpg")'></div>
    <div style='background:url("http://104.131.209.93/wp-content/uploads/2015/02/4.jpg")'></div>
    <div style='background:url("http://104.131.209.93/wp-content/uploads/2015/02/back.jpg")'></div>

顺便说一句,当我在前臂陈述中写回声时,我有点不知所措。由于我需要将url括在"或"中,但我已经在echo语句中使用了这两个,所以我应该如何将其括起来?

非常感谢!

好吧,你确实错过了回声中的一点标记?这应该会奏效:

foreach ($magazine_issue_pages as $magazine_issue_page) {
    echo '    <div style="background:url(''' . $magazine_issue_page . ''')"></div>' . PHP_EOL;
}

另一种方法是使用模板,比如,这样可以更容易地发现缺失的东西

$template = '    <div style="background:url(''{{url}}'')"></div>';
foreach ($magazine_issue_pages as $magazine_issue_page) {
    echo str_replace('{{url}}', $magazine_issue_page, $template) . PHP_EOL;
}

您的数组应该是这样的。

$magazine_issue_pages = array('http://104.131.209.93/wp-content/uploads/2015/02/1.jpg','http://104.131.209.93/wp-content/uploads/2015/02/2.jpg','http://104.131.209.93/wp-content/uploads/2015/02/3.jpg','http://104.131.209.93/wp-content/uploads/2015/02/4.jpg','http://104.131.209.93/wp-content/uploads/2015/02/back.jpg');

然后试试这个。

foreach ($magazine_issue_pages as $magazine_issue_page) {
echo '<div style="background:url('''.$magazine_issue_page.''')"></div>';}