Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.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函数创建div,该div将被调用x次_Php_Html - Fatal编程技术网

PHP函数创建div,该div将被调用x次

PHP函数创建div,该div将被调用x次,php,html,Php,Html,我试图创建一个html元素,该元素包含由函数创建的x其他div数量,其中x取决于$allposts包含的元素数量 <div id="postings"> <?php foreach($allposts as $key => $value){ createPost($key, $value); } ?> </div> 这是包含函数createPost($author,$input)的php文档 该函数起作

我试图创建一个html元素,该元素包含由函数创建的
x
其他
div
数量,其中
x
取决于
$allposts
包含的元素数量

<div id="postings">
    <?php
    foreach($allposts as $key => $value){
        createPost($key, $value);
    }
    ?>
 </div>
这是包含函数
createPost($author,$input)
的php文档


该函数起作用,但似乎每次调用该函数时,都会覆盖上一个post,只留下一个post可见,这是数组中的最后一个post。

foreach
之外获取
$data
数组声明,需要做的其他更改是,不要将$i用作$data数组的键,因为每次都会用0(零)声明它,因此,所有新值都会替换先前的值。因此,不要使用
$i
而是保留它
$data[]
,这样它会自动添加数字索引

<?php
    $data = [];    // I took it out of the loop.
    function createPost($author, $input)
    {
        foreach($input as $key => $value){
        $data[] = $value;
    }
    echo "<div>
                <span class='post-title'>$data[0]</span>
                <span class='post-author'>$author</span>
                <span class='post-date'>$data[1]</span>
                <p class='post-desc'>$data[2]</span>
           </div>";
     }
?>

foreach
之外获取
$data
数组声明,需要做的另一个更改是,不要使用$i作为$data数组的键,因为每次都会用0(零)声明,因此,所有新值都会替换上一个值。因此,不要使用
$i
而是保留它
$data[]
,这样它会自动添加数字索引

<?php
    $data = [];    // I took it out of the loop.
    function createPost($author, $input)
    {
        foreach($input as $key => $value){
        $data[] = $value;
    }
    echo "<div>
                <span class='post-title'>$data[0]</span>
                <span class='post-author'>$author</span>
                <span class='post-date'>$data[1]</span>
                <p class='post-desc'>$data[2]</span>
           </div>";
     }
?>

$data[2];

没有正确的结束标记,可能它干扰了格式设置,导致在呈现到浏览器时丢失数据。你有它推出的html源代码的示例吗? 缩进确实有助于提高可读性

<?php

function createPost($author, $input)
{
    $data = [];
    $i = 0;

    foreach($input as $key => $value) {
        $data[$i] = $value;
        $i++;
    }

    echo "<div>
            <span class='post-title'>$data[0]</span>
            <span class='post-author'>$author</span>
            <span class='post-date'>$data[1]</span>
            <p class='post-desc'>$data[2]</p>
          </div>";
}

?>

$data[2];

没有正确的结束标记,可能它干扰了格式设置,导致在呈现到浏览器时丢失数据。你有它推出的html源代码的示例吗? 缩进确实有助于提高可读性

<?php

function createPost($author, $input)
{
    $data = [];
    $i = 0;

    foreach($input as $key => $value) {
        $data[$i] = $value;
        $i++;
    }

    echo "<div>
            <span class='post-title'>$data[0]</span>
            <span class='post-author'>$author</span>
            <span class='post-date'>$data[1]</span>
            <p class='post-desc'>$data[2]</p>
          </div>";
}

?>