Отключение многомерных массивов в php - PullRequest
0 голосов
/ 24 марта 2011

Я пытаюсь сбросить определенное значение в массиве сеансов в php. Я хотел бы спросить, есть ли лучший способ сделать это:

    <?php

    session_start();


    if(isset($_GET['Uname'])){
        echo "Uname is set!";


            $uname=$_GET['Uname'];


        echo count($_SESSION['user']);

        for($x=0; $x < count($_SESSION['user']); $x++ ){

            if($_SESSION['user'][$x]['Uname']==$uname){

                unset($_SESSION['user'][$x]['Uname']);
            }

        }


    }else{


    }

?>

Можно ли сделать то же самое, используя цикл foreach? Или другой метод

Ответы [ 2 ]

0 голосов
/ 24 марта 2011

Я пытаюсь сбросить определенное значение в массиве сеансов в php. Я хотел бы спросить, есть ли лучший способ сделать это.

Я могу заверить вас, что лучший способ отменить переменную - использовать для нее функцию unset().

0 голосов
/ 24 марта 2011

Конечно, сброс user должен решить это. Вам не нужна петля. Попробуйте это, обновляя страницу, безусловно, установит значение за один раз, а другой сбрасывает его значение.

<?php

session_start();

$array = array('arr', 'arr', 'arr', 'arr', 'arr', 'arr');

if(isset($_SESSION['user']))
{
    print_r($_SESSION['user']);
    unset($_SESSION['user']);   
}
else{
    $_SESSION['user'] = $array;
    echo "user session was set";
}

И в соответствии с этим вопросом, https://stackoverflow.com/questions/4891301/top-bad-practices-in-php, использование count() в цикле - плохая практика.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...