В чем тут ошибка? По какой-то причине записывает только первый элемент массива, а остальные будто бы не видит... PHP: $array=['test'=>1, 'test2'=>2, 'test3'=>3]; foreach ($array as $name => $value) { return $_SESSION[$name]=$value; } P.S. Ошибся с название) Простой цикл с массивом*
А после первого выходит из функции вообще. Потому что ты не прочитал, что такое ретурн и накодил пальцем в небо. Тут так не работает. Тут или знаешь, что делаешь и делаешь, либо не знаешь и ничего не будет работать. Программирование - штука точная.
Мне просто нужно было чтобы он выводил эти данные, но через echo(если нужно) или чтобы можно было в переменную записать.
Ну так делай через echo или пиши в переменную, а не return Опиши, что конкретно хочешь. Зачем там много раз писать что-то в одну переменную сессии? Ты же в курсе, что там будет только последнее значение в итоге? Что хочешь сделать, опиши.
Да, вкурсе, просто мне нужно передавать эту функцию в массив-переменную, вот например: $array=[$module->__setSession('test')]; Но при других условиях, делать просто вывод этой сессии: echo $module->__setSession('test'); --- Добавлено --- Наверно грамотней просто сделать отдельную функцию для SET и для PRINT, что я в принципе в конце концов и сделал.