У меня есть эта простая функция PHP
<?php
$ELASTIC_SEARCH_SPECIAL_KEYWORDS = "/[\\+\\-\\=\\&\\|\\!\\(\\)\\{\\}\\[\\]\\^\\\"\\~\\*\\<\\>\\?\\:\\\\\\/]/";
function escapeESReservedChars($text) {
global $ELASTIC_SEARCH_SPECIAL_KEYWORDS;
$result = preg_replace_callback ($ELASTIC_SEARCH_SPECIAL_KEYWORDS,
function ($matches) {
return "\\" . $matches[0];
}, $text);
return $result;
}
Вот $text
любое текстовое сообщение, где, если есть какие-либо специальные символы, оно заменит это на \\
Он запускается только когда я делаю сборку & загрузить на сервер. Если я запускаю этот файл на localhost
это ни беги, ни выбрасывай ошибки. С этой функцией нет проблем. Я думаю middleman
делает что-то за экраном.
Задача ещё не решена.
Других решений пока нет …