$array = [...];
$del_val = '137';
// В современном PHP
$data = array_filter($array, fn (array $item): bool => $item['tariff_id'] == $del_val);
// Если у вас старая версия
$data = array_filter($array, function (array $item) use ($del_val): bool {
return $item['tariff_id'] == $del_val;
});
$item = end($data);
echo $item['mode_id'];
// Но можно и вашу версию доработать
$data = null;
foreach ($array as $arr) {
if ($arr['tariff_id'] == $del_val) {
$data = $arr;
}
}
echo $data ? $data['mode_id'] : 'not found';
$.ajax({
url: 'https://domain.com/router/',
method: 'post', // NOT A TYPE
data: JSON.stringify({ ... }),
dataType: 'application/json; charset=utf-8',
success: (response) => { ... },
error: (response) => { ... }
})
.done
и .fail
срабатываю, когда у вас получилось либо не получилось сделать запрос. success
и error
срабатывают в зависимости от ответа сервера. $str = '
текст текст текст текст текст
<tr><td>Габариты заводской упаковки (длина, ширина, высота): <b>35 x 16 x 9</b> см. </td></tr>
<tr><td>Габариты упаковочной коробки (длина, ширина, высота): <b>40 x 21 x 14</b> см. </td></tr>
текст текст текст текст текст
';
preg_match('/Габариты упаковочной коробки.*<b>(.*)<\/b>/', $str, $matches);
$value = array_key_exists(1, $matches) ? $matches[1] : null;
var_dump($value);
// 40 x 21 x 14
SELECT name, `text`
FROM product
JOIN product_attribute USING (product_id)
JOIN attribute_description USING (attribute_id)
-- JOIN attribute USING (attribute_id) -- таблица в запросе не нужна
GROUP BY 1, 2
HAVING COUNT(*) > 1;
ORDER BY MAX(attribute_id)
HAVING COUNT(*) = 3
WITH `cte` (`id`, `row`) AS (
SELECT `id`, ROW_NUMBER() OVER `win`
FROM `product`
WINDOW `win` AS (PARTITION BY `sku` ORDER BY `quantity` = 0, `price`)
)
UPDATE `cte`
JOIN `product` USING (`id`)
SET `product`.`status` = (`cte`.`row` = 1)
UPDATE `product` AS `p`
LEFT JOIN (
SELECT `t`.`sku`, MIN(`p`.`id`) AS `id`
FROM (
SELECT `sku`, MIN(`price`) AS `price`
FROM `product`
WHERE `quantity` != 0
GROUP BY `sku`
) AS `t`
JOIN `product` AS `p`
ON `p`.`sku` = `t`.`sku` AND `p`.`price` = `t`.`price`
WHERE `p`.`quantity` != 0
GROUP BY `t`.`sku`
) AS `i` ON `i`.`id` = `p`.`id`
SET `p`.`status` = (`i`.`id` IS NOT NULL);