创建对象时,如何包括此正则表达式



在我的$plates = explode(';', $plates);之后,我想在创建新的$dossier时包括另一个正则表达式(在我的foreach中):

$minus = preg_replace('~[-]~', '', $license_plates);

我该怎么做?

这是我的代码:

public function addLicensePlates(Request $request)
{            
    $product_id = $request->input('product_id');
    $license_plates = $request->input('license_plates');
    $plates = preg_replace('~s+|[.,:;*/_]~', ';', $license_plates); // s+|[.,:;*/_]
    $plates = explode(';', $plates);
    foreach($plates as &$plate) {
        $dossier = new Dossier;
        $dossier->license_plate = trim($plate);
        $dossier->product_id = $product_id;
        $dossier->save();
    }
}

ps:我不想将-添加到$plates表达式中,但是在爆炸之后。

我建议编辑现有函数如下:

  • preg_replace ING时,在输入字符串上使用trim()以后清除空值
  • 使用str_replaceforeach块中替换连字符。

请参阅PHP演示:

$license_plates = "  WORD-HERE 36-LXD-5";
$plates = preg_replace('~s+|[.,:;*/_]~', ';', trim($license_plates)); // trim the incoming value
$plates = explode(';', $plates);
foreach($plates as &$plate) {
    $license_plate = str_replace('-', '', $plate); // Remove hyphens
    echo $license_plate. "n";
}

输出:WORDHERE36LXD5

最新更新