[英]Javascript array to laravel controller
我有一个用Javascript编写的用户数组,我试图用该数组和一些其他数据向Laravel控制器发出发布请求。
seleccionados = [“ A”,“ B”,...]
$.post('/guardarOpciones', {
_token: $('meta[name=csrf-token]').attr('content'),
equipos: cant_equipos,
jugadores: cant_jugadores,
fecha: fecha_inicio,
users: JSON.stringify(seleccionados)
}
)
.done(function(data) {
//alert(data);
})
.fail(function() {
alert( "error" );
});
现在在我的控制器中,我试图访问该数组然后在其上循环
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Configuracion;
class OpcionesController extends Controller
{
public function store(Request $request){
$usuarios = request('users');
error_log($usuarios);
}
}
当然$ usuarios是一个字符串,所以我不能以数组形式访问它,我尝试使用json_decode和其他一些东西来转换它,但是没有用。
我该怎么做才能将其转换为数组,以便可以遍历它? 或者也许我不必在ajax帖子中执行JSON.stringify
这应该工作。
public function store(Request $request){
$usuarios = $request->users;
}
不要使用JSON.stringify。
这应该可以解决您的问题(请检查行中的注释):
public function store(Request $request){
$usersJSON = $request->users; // get your users data
$usersArray = json_decode($usersJSON, true); // if second parameter is true, you get array, otherwise or if you don't provide it you get object...
dd($usersArray); // to check your result..
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.