Почему бы не сделать дополнительный уникальный идентификатор в вашей базе данных, чтобы строка данных имела как уникальный идентификатор (7), так и уникальный "слизень" (dog-food-purina)? Таким образом, вы можете искать строки любым способом, просто перенаправляя slug или ID в ваш PHP-скрипт и обрабатывая все это там.
For example: your purina row can be as follows:
row -> id = 1
row -> name = "Purina Dog Food"
row -> description = "This is awesome stuff!"
row -> slug = "dog-food-purina"
row -> quantity = "10lbs"
row -> price = "5"
А затем сделайте что-то вроде этого:
if (is_string($param) && !empty($param)) {
$sql = "SELECT * FROM products WHERE slug = '{$param}'"
} else if (is_numeric($param) && $param > 0) {
$sql = "SELECT * FROM products WHERE id = {$param}"
} else return false
Надеюсь, это поможет