【发布时间】:2018-07-01 13:17:47
【问题描述】:
Laravel 新手。我正在尝试使用控制器来匹配与 URL 中发送的内容相匹配的服务。
示例网址:
/public/service/cost/2
控制器中的代码是:
public function getServiceCost($id) {
$service = Service::whereIn('id', array($id))->get();
return $service;
}
我希望能够像这样在 URL 中传递多个 id: /public/service/cost/1,2,3
如果我硬编码测试,它工作正常。
public function getServiceCost($id) {
$service = Service::whereIn('id', array(1, 2, 3))->get();
return $service;
}
我需要做些什么才能将 URL 中的参数传递到 whereIn 以便它返回我在 URL 中传递的内容?
如果我使用
/public/service/cost/2,3
它只返回 id 2 的数据。
我将函数改成使用Request $request,但仍然只显示一个结果:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Service;
class ServiceController extends Controller
{
public function getServiceCost2(Request $request) {
$service = Service::whereIn('id', array($request->get('id')))->get();
return $service;
}
}
使用的网址是:
public/service/cost?id=1,2
【问题讨论】:
-
我建议你检查如何通过查询字符串传递数组stackoverflow.com/questions/6243051/…
标签: php laravel-5.3