傳遞Laravel Eloquent查詢參數的動態方法
P粉879517403
2023-09-01 00:20:04
<p>我有以下以字串格式表示的查詢參數</p>
<pre class="brush:php;toolbar:false;">$query = '->whereIn('short_code', ["9999"])->whereBetween('request_timestamp', [request(' startTime'), request('endTime')])';</pre>
<p>我該如何將它傳遞給Eloquent?我試圖實現類似這樣的效果</p>
<pre class="brush:php;toolbar:false;">InboundMessage::query()->{$query};</pre>
<p>我得到了以下錯誤</p>
<pre class="brush:php;toolbar:false;">屬性[->whereIn('short_code', ["9999"])->whereBetween('request_timestamp', [request('startTime' ), request('endTime')])]在Eloquent建構器實例上不存在。 </pre>
上述查詢的問題在於它看起來像這樣
由於您在查詢建構器和$query字串中都使用了
->
。所以只要調整您的$query為