Если вы сделаете вашу функцию word()
возвращающей случайную строку вместо ее отображения, вы можете использовать ее как любое значение, вызывая функцию.
function word() {
$arr = array("/c/","/b/","/c/");
return $arr[array_rand($arr)];
}
if( preg_match(word(), $text) ) {
$result = "found";
}
else {
$result = "not found";
}
echo $result;
Если это делает ее более понятной, это то же самое, что сохранить результат из функции в переменной и использовать его.
Все они одинаковы:
// Writing the pattern in place.
preg_match("/a/", $text);
// Storing it in a variable before use.
$to_match = "/a/";
preg_match($to_match, $text);
// Storing it in a variable where the value is returned from a function.
$to_match = word();
preg_match($to_match, $text);
// Using a function directly in the call to `preg_match`.
preg_match(word(), $text);