Escape & amp; (амперсанд) в SOQL

У меня есть этот кусок кода для поиска данных на 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, Я продолжаю получать ту же ошибку, что я могу сделать, чтобы иметь возможность искать строки, содержащие &?

Благодарю.

1

Решение

Вам нужен слеш, вот так: 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 и т.п.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]