PHP无法对变量进行更改

时间:2014-08-07 08:50:46

标签: php arrays

我有一个数组,我保留一些初始值。在同一页面上,在另一个php标记中,当我按get_more_items时,我想向数组中添加更多值。

第一个PHP标记

<?php 
   $solution_files = array();
   ... assigning initial values...
?>

在同一页面上,我有另一个php标签,我想修改$ solution_files的值:

第二个PHP标记

<?php
     if (isset($_GET["get_more_items"])){   
        //add more values to the $solution_files               
     }
     // new values visible here
?>

在最后一个php标签中,我想列出我的数组($ solution_files),我只看到第一个php标签中分配给它的值,而不是我搜索后添加的新值(get_more_items)。 / p>

第三个PHP标记

<?php
     if (isset($_GET["display_results"])){  
        print_r($solution_files) 
        // it only displays the values I had initially               
     }
?>

当我要求&#34;获取更多项目&#34;

时,如何保留我在第二个标签中指定的新值?

1 个答案:

答案 0 :(得分:1)

你需要制作像这样的会话数组

第一个PHP标记

<?php 
   if(!isset($_SESSION['solution_files']))
   {
     $_SESSION['solution_files'] = array();

       ... assigning initial values...
       .. like ..
        $_SESSION['solution_files'][] "some value"; 
    }
?>

第二个PHP标记

<?php 
   if (isset($_GET["get_more_items"])){   
    //add more values to the $solution_files  
       .. like ..
        $_SESSION['solution_files'][] "some more value"; 
    }
?>

第三个PHP标记

<?php 
   if (isset($_GET["display_results"])){  
       print_r($_SESSION['solution_files']) 
       // it only displays the values I had initially               

    }
?>

注意:在使用php中的会话之前,您必须在页面顶部开始会话。像

session_start();