Код: Выделить всё
function sequence($arr_scheme = [], $arr_input = [])
{
$sequence_need = array_values(array_intersect($arr_scheme, $arr_input));
if(!empty($arr_input) && ($sequence_need == $arr_input)):
return true;
else:
return false;
endif;
}
Код: Выделить всё
$sample = "branch of science";
$scheme = "The branch of science concerned of nature and property of matter and energy";
Код: Выделить всё
$arr_sample = explode(" ",trim(rtrim(rtrim($sample,".")," ")));
echo 'Sample:';
var_dump($arr_sample);

Код: Выделить всё
$arr_scheme = explode(" ",trim(rtrim(rtrim($scheme,".")," ")));
echo '
Scheme:';
var_dump($arr_scheme);

Теперь я проверяю последовательность:
Код: Выделить всё
$result = sequence($arr_scheme, $arr_sample);
Код: Выделить всё
echo '
Result:';
var_dump($result);

Когда я установил переменную $sample в значение
Код: Выделить всё
"branch science"
Однако, когда я установил для переменной sample значение
Код: Выделить всё
"branch of science"
Причина — слово было больше 1, как мне решить эту проблему?
[img]https:/ /i.sstatic.net/BfySz.png[/img]
Подробнее здесь: https://stackoverflow.com/questions/379 ... n-a-string