. * * The interactive user interfaces in modified source and object code versions * of this program must display Appropriate Legal Notices, as required under * Section 5 of the GNU Affero General Public License version 3. * * In accordance with Section 7(b) of the GNU Affero General Public License version 3, * these Appropriate Legal Notices must retain the display of the "EspoCRM" word. ************************************************************************/ namespace Espo\Core\PhoneNumber; class Util { /** * @internal Do not use in custom code. * @return array{string, ?string} */ public static function splitExtension(string $value): array { $ext = null; $delimiters = [ 'ext.', 'x.', 'x', '#', ]; foreach ($delimiters as $delimiter) { $index = strrpos($value, $delimiter); if ($index === false || $index < 2) { continue; } $ext = trim(substr($value, $index + strlen($delimiter))); $value = trim(substr($value, 0, $index)); break; } return [$value, $ext]; } }