我有这个简单的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
正在幕后做点什么。