$coem = str_replace(' ', '', $part->part_number);
$poem = str_replace(' ', '', $v->oem);
$coem = str_replace('-', '', $coem);
$poem = str_replace('-', '', $poem);
$coem = str_replace('-', '.', $coem);
$poem = str_replace('-', '.', $poem);
$coem = str_replace('(', '.', $coem);
$poem = str_replace('(', '.', $poem);
$coem = str_replace(')', '.', $coem);
$poem = str_replace(')', '.', $poem);
$coem = str_replace(
[')', '(', ' ', '-', '_'],
['.', '.', '', '.', ''],
$coem,
);
function replacementToRules(string $string): string
{
return str_replace(
[')', '(', ' ', '-', '_'],
['.', '.', '', '.', ''],
$string,
);
}
//и потом в цикле
$coem = replacementToRules($part->part_number);
$poem = replacementToRules($v->oem);
// разбор
foreach ($rows as &$row) {
$result[]= DB::select("SELECT DISTINCT p.id, mm.description make, m.description model, p.constructioninterval, p.description FROM passanger_cars p
JOIN models m ON m.id=p.modelid
JOIN manufacturers mm ON mm.id=m.manufacturerid
WHERE p.id=" . $row->linkageId);
}
// разбор
//не знаю как правильно делается подготовленный запрос в ларавеле
$result= DB::prepare("SELECT DISTINCT p.id, mm.description make, m.description model, p.constructioninterval, p.description FROM passanger_cars p
JOIN models m ON m.id=p.modelid
JOIN manufacturers mm ON mm.id=m.manufacturerid
WHERE p.id IN (:Ids)");
$iDs = array_map(
fn ($r): int => $r->linkageId,
$rows,
);
//а дальше скармливаешь подготовленному запросу массив с адишниками
$textGray =' text-gray-600';
$hover = 'hover:';
$textOrange = 'text-orange';
$cursorDefault = 'cursor-default';
function getStyle (array $styleRules): strung
{
return implode(' ', $styleRules);
}
$linkStyle = !empty($hoverUrl) ? getStyle([$textGray, $hover . $textOrange]) : getStyle([$textOrange, $cursorDefault]);
<a class="<?=$linkStyle?>" href="<?= $value['path'] ?>"><?= $value['title'] ?></a>
$a = (new DateTime('2022-02-09 +1 day'))->format('Y-m-d');
$tomorrow = new DateTimeImmutable('tomorrow');
$twoDayDiff = new DateTimeImmutable('+ 2 day');
$sixDaySevenHours = new DateTimeImmutable('+ 6 days 7 hours');
$fourYears = new DateTimeImmutable('+ 4 years');
//ну и так далее.
А почему нельзя-то, объяснить можете, если не затруднит? Доктрина умеет мапить результат выполнения сырого запроса на объекты.
Комментарий мой выше еще раз прочитайте.
Пишите сырой SQL
В чем проблемы то? А вообще человек ниже тебе верно сказал, это надо делать не тут, а логике формирования данных для ссылок в меню