0
我正在尝试执行自定义验证规则以测试销售价格是否高于购买价格。但是这些产品进入了一个嵌套数组。运行调试器时,我可以正确地看到第一个参数的值('price_purchase')与他的值,但第二个参数($ price_sell)具有“原始数据”'products。*。purchase_price'而不是相应的值。如何做到这一点?我试图做到这一点棘手的东西,如:使用嵌套数组的自定义验证规则
$i = explode('.', $attribute);
$i = $i[1];
$input = $validator->getData();
以获得迭代器和手动测试...但不是正确的方法。
这里是例如:
public function boot()
{
Validator::extend('greater_than', function($attribute, $price_purchase, $price_sell, $validator)
{
$result = floatval($price_purchase) > floatval($price_sell);
return $result;
});
}
public function validateStore($params) {
'products.*.selling_price' => 'greater_than:products.*.purchase_price',
}
预先感谢。
非常感谢老兄! array_get是方式:) – jnieto