Below mentioned elastic search query which is working fine if we hit it directly,
{ "query": { "query_string": { "query": ""testtext/123"" } } }
In PHP array how to pass the above-mentioned query with backslashes. I tried the below code which gives an error response.
$query = array( "query"=>[ "query_string"=> [ "query"=>"".$string."" ] ] );
Error is:
syntax error, unexpected ” (T_NS_SEPARATOR)
Advertisement
Answer
is an escape character, you need to escape that itself otherwise it escapes the second "
so PHP thinks the strings are unfinished. You need to resolve the syntax error and also ensure the the second quote mark is actually part of the string, not a PHP delimiter.
The simplest way actually would be to use single quotes for the string delimiter in PHP:
$query = array( "query"=>[ "query_string"=> [ "query"=>'"'.$string.'"' ] ] );