我有以下内容。
my class
<?php
namespace appmodels;
use BingAdsCustomerManagementCustomerManagementServiceSettings;
和
api class
namespace BingAdsCustomerManagement
{
final class CustomerManagementServiceSettings
{
const SandboxEndpoint = 'https://clientcenter.api.sandbox.bingads.microsoft.com/Api/CustomerManagement/v9/CustomerManagementService.svc';
如何使用变量作为类名来访问常量?它可以直接实例化类,但当类是变量时,我无法访问或实例化它。
new CustomerManagementServiceSettings();
$serviceSettingsClass = 'CustomerManagementServiceSettings';
$serviceSettingsClass::SandboxEndpoint; # line 80
提供
PHP致命错误:在第80行上的/cygdrive/c/Users/Chloe/workspace/bestsales/models/BingAds.PHP中找不到类"CustomerManagementServiceSettings"
这个问题于事无补。
在Java中,我可以使用
Class c = CustomerManagementServiceSettings.class
String se = (String) c.getField("SandboxEndpoint").get(null);
观察php.net上的akhoondi指向这里的内容:
必须注意,当使用动态类名[…]时,"当前命名空间"[…]是全局命名空间。
因此,要做到这一点,您需要在使用动态类名时指定完整的命名空间。