Мне нужно реализовать следующую функциональность:
У меня есть поле имени, которое содержит как имя, так и фамилию. Он хранится в базе данных и находится в порядке «фамилия».
Я реализую скрипт, который просматривает эти записи. В настоящее время мне удалось проверить, содержит ли строка пробел, если она содержит пробел, это означает, что это имя, а не номер идентификационной карты, например. Вот код:
$query = "John Doe";
$checkIfSpaceExists = strpos($query, " ");
if ($checkIfSpaceExists == "")
{
//No Space therefore it is not a name
}
else
{
//Contains space
$queryExploded = explode(" ", $query);
foreach ($queryExploded as $q)
{
//Here I need the functionality so that if someone entered John Doe
//2 different strings are saved, which are
//$string1 = John Doe
//$string2 = Doe Johns
//If the name consists of 3 parts, strings for every combination is saved
}
Затем я вставлю эти строки в оператор SQL с атрибутом LIKE, и будет как LIKE для JOHN DOE и DOE JOHN. Следовательно, если пользователь может либо ввести Джона Доу, либо Доу Джона, чтобы найти результат.
Любые предложения о том, как это сделать?
Большое спасибо
* 1014 Крис *