我有这段代码来搜索Salesforce上的数据:
代码:
$campaign_name = 'A & B Campaign';
$search = 'FIND {'.$campaign_name.'} IN NAME FIELDS RETURNING CAMPAIGN(ID)';
$searchResult = $mySforceConnection->search($search);
var_dump('$searchResult: ' . print_r($searchResult, true));
错误:
mismatched character '&' expecting '}'
我尝试使用preg_replace
,htmlentities
,我一直收到相同的错误,我该怎么做才能搜索包含&
的字符串?
感谢。
答案 0 :(得分:2)
你需要一个斜杠,如:FIND {A \& B}
(顺便说一下,这是一个有效的SOSL搜索;)
滚动到https://developer.salesforce.com/docs/atlas.en-us.soql_sosl.meta/soql_sosl/sforce_api_calls_sosl_examples.htm的底部以获取更多信息。
不知道是否有内置的php函数可以为你做这件事。最坏的情况是使用str_replace
,preg_replace
等创建自己的效用函数。