Php 如何保护删除类元素的上一个值
我在laravel中有一个控制器类,其中有一个函数create()和一个变量附件,我通过ajax调用该函数 我的班级代码是Php 如何保护删除类元素的上一个值,php,ajax,class,oop,laravel,Php,Ajax,Class,Oop,Laravel,我在laravel中有一个控制器类,其中有一个函数create()和一个变量附件,我通过ajax调用该函数 我的班级代码是 class AttachmentController extends Controller { public $_attachments; public function create() { $this->_attachments[]= 'test'; var_dump($this-&
class AttachmentController extends Controller
{
public $_attachments;
public function create()
{
$this->_attachments[]= 'test';
var_dump($this->_attachments);
}
问题是每次我用ajax调用它时,它都会在附件数组的0索引处返回“test”。但我想,如果我第一次调用create函数,它会给我0索引的测试,但下次调用它的时候。它给了我0和1索引的“测试”,以此类推。。
如何可能请帮助我保存请求之间的值您需要将它们存储在某个位置,另一种方法是使用会话,如下面的示例所示,有关更多信息,请参阅
要保留请求之间的值,您需要将它们存储在某个位置,另一种方法是使用会话,如下面的示例所示,有关详细信息,请参阅
试试这样的方法
$_attachments[] = Session::get('test');
$_attachments[] = 'test';
Session::get('test', $_attachments);
dd(Session::get('test'));
如果这是你想要的,请告诉我 试试这样的东西
$_attachments[] = Session::get('test');
$_attachments[] = 'test';
Session::get('test', $_attachments);
dd(Session::get('test'));
如果这是你想要的,请告诉我
由于HTTP驱动的应用程序是无状态的,会话提供了一种方法
跨请求存储有关用户的信息
进一步阅读:
由于HTTP驱动的应用程序是无状态的,会话提供了一种方法
跨请求存储有关用户的信息
进一步阅读:因为附件是一个数组。每次调用函数时,您都在向变量添加值。我在数组的附件变量中添加值。。但每次它都会给我0索引的“测试”。。但我不希望它像这样,我希望如果调用函数一次它给我数组(0=>'test'),但当我第二次调用函数时,它应该给我像数组一样的输出(0=>'test',1=>'test'),但它仍然给我数组(0=>'test'),我不明白。您希望您的输出如何?给我一个例子。好的,让我解释一下,如果我第一次调用create函数,它会给我输出[0=>“test”],但是当我第二次调用它时。它仍然给我相同的输出,但它应该给我[0=>'test',1=>'test']HTTP请求没有从一个连接到下一个。因此,如果您通过web浏览器多次调用createAction
,它将始终表现为您第一次调用它。听起来您想“记住”附件,在这种情况下,您需要将其存储在某个地方(如会话
,或数据库
或文件系统
),因为\u附件
是一个数组。每次调用函数时,您都在向变量添加值。我在数组的附件变量中添加值。。但每次它都会给我0索引的“测试”。。但我不希望它像这样,我希望如果调用函数一次它给我数组(0=>'test'),但当我第二次调用函数时,它应该给我像数组一样的输出(0=>'test',1=>'test'),但它仍然给我数组(0=>'test'),我不明白。您希望您的输出如何?给我一个例子。好的,让我解释一下,如果我第一次调用create函数,它会给我输出[0=>“test”],但是当我第二次调用它时。它仍然给我相同的输出,但它应该给我[0=>'test',1=>'test']HTTP请求没有从一个连接到下一个。因此,如果您通过web浏览器多次调用createAction
,它将始终表现为您第一次调用它。听起来您想“记住”附件,在这种情况下,您需要将其存储在某个地方(如会话
,或数据库
或文件系统
)。感谢您的响应,上述解决方案并没有解决我的问题,事实上,我正在使用dropzone.js上传附件。当我上传一个文件时,它工作正常,但我上传了多个文件,但它仍然不工作,所以你想一个一个上传,并保存已上传文件的名称?或者你想一次上传所有文件?谢谢你的回复,上面的解决方案并没有解决我的问题,事实上我是用dropzone.js上传附件的。当我上传一个文件时,它工作正常,但我上传了多个文件,但它仍然不工作,所以你想一个一个上传,并保存已上传文件的名称?或者你想一次上传所有文件?
class AttachmentController extends Controller
{
public function create()
{
$attachments = Session::get('attachments', array());
$attachments[] = 'test';
Session::put($attachments);
var_dump($this->_attachments);
}
}