用php将数据保存在一个数组中,该数组将其保存在会话中,每次我重新加载页面时,它都会显示保存的数据和输入的新数据

用php将数据保存在一个数组中,该数组将其保存在会话中,每次我重新加载页面时,它都会显示保存的数据和输入的新数据,php,arrays,Php,Arrays,您的问题不清楚,但根据我的假设,您希望显示以前存储的数据以及新数据 在函数agregar($dato)中,您正在将数据推送到不包含以前数据的$this->miArreglo中。您需要将数据推送到$\u会话['MiArreglo']数组中 代码如下: <?php require "GuardarSesion.php"; $arreglo = new Arreglo(); $arreglo -> agregar(67); $arreglo -> gu

您的问题不清楚,但根据我的假设,您希望显示以前存储的数据以及新数据

在函数agregar($dato)中,您正在将数据推送到不包含以前数据的$this->miArreglo中。您需要将数据推送到$\u会话['MiArreglo']数组中

代码如下:

<?php
    require "GuardarSesion.php";
    $arreglo = new Arreglo();
    $arreglo -> agregar(67);
    $arreglo -> guardarSesion();
    var_dump($arreglo -> leerSesion()); 
?> 
<?php
    class Arreglo
    {
        private $miArreglo = array();

        function agregar($dato)
        {                                  
                $id+=1;
                array_push($this->miArreglo,$id, $dato);                           
        }
        function guardarSesion()
        {            
            session_start(); 
            $_SESSION['MiArreglo'] = $this->miArreglo;  
        }
        function leerSesion()
        {            
            session_start();
            return $_SESSION['MiArreglo'];
        }
    }
?>

从代码中还不清楚在添加$id+=1时,$id变量已经包含了什么

那么问题是什么呢?我不能让它在输入数据之前显示数据,只需更新数组,我想显示我输入的内容和新的内容:/show我们在
GuardarSesion.php
中看到了什么,但作为一般规则。在脚本开始时启动会话一次,并确保在向浏览器发送任何内容(例如回音或甚至一段HTML)之前先启动会话
function agregar($dato)
{
    $id+=1;
    array_push($_SESSION['MiArreglo'],$id, $dato);
}