在php / html文件中追加/删除数组中的项目

时间:2015-07-28 20:23:36

标签: php html arrays

我是一名PHP初学者,需要一些帮助。

我有一个config.data文件,其中包含$ logins数组序列化。 (谢谢@Barmar!) 我有signin.php(下面),我想通过以下方式修改:

  1. 添加一个“添加项目”按钮,该按钮会将信息附加到$ logins数组
  2. 添加一个'删除项目'按钮,该按钮会将信息删除到$ logins数组。
  3. 任何帮助实现这两个目标的人都将不胜感激!

    config.data

    $logins = array(
    'project1' =>
            array(
            'password' => 'mypassword',
            'title' => 'Capacitors Project Planner',
            'emails' => array('myweb@mywebsite.com')
             ),
    'project2' =>
        array(
            'password' => 'mypassword2',
            'title' => 'My second project',
            'emails' => array('manager@youwebsite.com',
                            'worker@youwebsite.com')
            )
    );
    

    signin.php

    require_once( 'config.php' );
    //displays arrays
    <table class="table" border='1'>
    <thead>
        <tr>
        <th> Project name</th>
        <th> Project Login</th>
        </tr>
        </thead>
    <tbody>
    <?php foreach( $logins as $projname => $projinfos ): ?>
        <tr>
            <td><?= $projname ?></td>
            <td><?= $projinfos["title"]?>
            </td>
            </tr>
    
    <?php endforeach; ?>
    </tbody>
    </table>
    

2 个答案:

答案 0 :(得分:1)

不要将PHP代码放入文件,序列化数据并读取/写入。

要获取数组的当前值,请使用:

$logins = unserialize(file_get_contents("config.data"));

更新$logins后,您可以将其保存为:

file_put_contents("config.data", serialize($logins));

答案 1 :(得分:1)

一个简单的例子: -

  

array_push()array视为堆栈,并推送传递的变量   在array的末尾。 array的长度增加了数量   推动变量。

<?php
$stack = array("orange", "banana");
array_push($stack, "apple", "raspberry");
print_r($stack);
?>

来源:http://php.net/manual/en/function.array-push.php

删除数组中的元素

<?php
$x = array(5, 6);
unset($x[0]);
var_dump($x);
?>

… this yields:

array(1) {
  [1]=>
  int(6)
}