PHP 和 libphonenumber:将字符串转换为 PhoneNumber 对象?

PHP and libphonenumber: convert a string to PhoneNumber object?

所以我将 phone 数字字符串传递到我的 PHP 后端。我正在尝试使用 Google 的库 phone 号码来验证传递的 phone 号码。

这是字符串:“+447400123456”($val)

$phoneUtil = \libphonenumber\PhoneNumberUtil::getInstance();
$phoneNumber = new \libphonenumber\PhoneNumber().setNationalNumber($val);
error_log(json_encode($phoneNumber));
$internationalFormatPhoneNumber = $phoneUtil->format($phoneNumber, \libphonenumber\PhoneNumberFormat::INTERNATIONAL);
error_log(json_encode($internationalFormatPhoneNumber));

不幸的是,我不断收到

"local.ERROR: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Call to undefined function App\Http\Controllers\setNationalNumber()'"

我只想检查传递的字符串是否是有效的国际 phone 号码(包括手机号码),然后再将其存储到我的数据库中。

谁能帮我解决这个问题?我正在努力处理文档并不断收到错误。

您使用的是点运算符 .,而不是正确的对象运算符 ->,因此您只需将 .setNationalNumber($val) 替换为 ->setNationalNumber($val)