function salesforce_api_id_convert in Salesforce Suite 7.2
Same name and namespace in other branches
- 6.2 salesforce_api/salesforce_api.module \salesforce_api_id_convert()
Converts a 15-character Salesforce ID to 18-character ID.
Parameters
string $sfid15:
Return value
case-insensitive 18-character Salesforce ID
1 call to salesforce_api_id_convert()
- salesforce_api_id_compare in salesforce_api/
salesforce_api.module - Compares mixed 15- and 18-character Salesforce IDs. Up-converts 15-character strings for comparison when applicable. Based on Christian G. Warden's code at…
File
- salesforce_api/
salesforce_api.module, line 2046 - Defines an API that enables modules to interact with the Salesforce server.
Code
function salesforce_api_id_convert($sfid15) {
if (strlen($sfid15) != 15) {
return $sfid15;
}
$chunks = str_split($sfid15, 5);
$extra = '';
foreach ($chunks as $chunk) {
$chars = str_split($chunk, 1);
$bits = '';
foreach ($chars as $char) {
$bits .= !is_numeric($char) && $char == strtoupper($char) ? '1' : '0';
}
$map = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ012345';
$extra .= substr($map, base_convert(strrev($bits), 2, 10), 1);
}
return $sfid15 . $extra;
}