如何保护以删除类元素的先前值


how to protect to delete previous value of class element

我在laravel中有一个控制器类,其中我有一个函数create()和一个变量附件,我正在通过ajax调用函数我的类代码是。

class AttachmentController extends Controller
{
    public  $_attachments;
    public function create()
    {
            $this->_attachments[]=  'test';
            var_dump($this->_attachments);

    }

问题是每次我通过 ajax 调用它时,它都会在附件数组的 0 索引处返回"test"。 但是我希望如果我第一次调用创建函数,它会在 0 索引上给我测试,但下次我调用它时. 它给了我对 0 和 1 索引的"测试",依此类推。怎么可能,请帮我<</p>

div class="answers">

要在请求之间保留值,您需要将它们存储在某个地方,另一种方法是使用会话,如下例所示,有关更多信息,请参阅 https://laravel.com/docs/session

<?php
namespace App'Http'Controllers;
use Illuminate'Http'Request;
use App'Http'Requests;
use App'Http'Controllers'Controller;
class AttachmentController extends Controller
{
    public function create(Request $request)
    {   
        $request->session()->push('attachments', 'test');
        var_dump($request->session()->get('attachments'));
    }   
}

尝试这样的事情。

$_attachments[] =  Session::get('test');
$_attachments[] = 'test';
Session::get('test', $_attachments);
dd(Session::get('test'));

让我知道这是否是你想要的。

由于 HTTP 驱动的应用程序是无状态的,因此会话提供了一种方式 跨请求存储有关用户的信息。

class AttachmentController extends Controller
{
    public function create()
    {
        $attachments = Session::get('attachments', array());
        $attachments[] = 'test';
        Session::put($attachments);
        var_dump($this->_attachments);
    }
}

延伸阅读: 拉拉维尔会议