Выполнить запрос через массив - PullRequest
0 голосов
/ 22 ноября 2010

Я хочу выполнить запрос к массиву или строке с PHP

Допустим, я получил строку:

$Iamastring = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc velit est, porta sed feugiat vitae, sodales et nisl. Suspendisse ut."

И я хочу выполнить запрос к этой строке, чтобы найти его:

"Lorem ipsum" OR ("dolor" AND "sodales")

В этом случае это будет правдой :). Как лучше всего это сделать?

Ответы [ 3 ]

2 голосов
/ 22 ноября 2010

регулярное выражение :) preg_match('\(Lorem ipsum)|(dolor.+sodales)\', $matches).Или варианты с различными регулярными выражениями

0 голосов
/ 22 ноября 2010

RegExp - один из способов, хотя, если вы хотите использовать встроенные строковые функции:

$haystack="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc velit est, porta sed feugiat vitae, sodales et nisl. Suspendisse ut.";

if((strrpos($haystack, "Lorem Ipsum")!==false)||((strrpos($haystack, "dolor")!==false)&&(strrpos($haystack, "sales")!==false))){

// do this if true

}

Обратите внимание, что встроенные строковые функции PHP работают быстрее, чем RegExps, но каждый подход меняется в зависимости от контекста.

0 голосов
/ 22 ноября 2010

Вы бы сделали это с помощью регулярного выражения.Проверьте что-то вроде preg_match ()

Следующее должно возвращать true или false, если шаблон соответствует:

preg_match ('/(Lorem ipsum)|(dolor+sodales)/' $Iamastring);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...