У меня есть имя таблицы в качестве теста. В тестовой таблице есть столбец test1. В столбце test1 есть строковое значение "abc & def", и я создал строчную переменную $ str = "abc & def". Когда я попытаюсь выполнить как запрос (выберите * из теста, где test1 нравится "% $ str%"). это ничего не даст в результате. Может ли кто-нибудь помочь?
Предполагаю, что вы используете основной (ванильный) PHP:
Что-то вроде ниже:
$esc_str = $db->quote($str);
// this is for PDO; for MySQLi use $db->escape_string($str) instead
$qry = "select * from test where test1 like '%$esc_str%'"
используйте следующее:
$esc_str = $db->quote($str);
$qry = "select * from test where test1 like '%".$esc_str."%'"
или же
$esc_str = $db->quote($str);
'select * from test where test1 like "%$esc_str%"'
этот пример преобразует переменную php в https://www.virendrachandak.com/techtalk/php-double-quotes-vs-single-quotes/
Надеюсь, поможет :)