PHPparsing错误:语法错误,意外的T_OBJECT_OPERATOR

debugging我的代码时出现这个错误:

PHPparsing错误:语法错误,第72行的order.php中意外的T_OBJECT_OPERATOR

这是代码片段(从第72行开始):

$purchaseOrder = new PurchaseOrderFactory->instance(); $arrOrderDetails = $purchaseOrder->load($customerName); 

3 Solutions collect form web for “PHPparsing错误:语法错误,意外的T_OBJECT_OPERATOR”

不幸的是,在PHP 5.4之前, new一个对象的方法是不可能的。

在PHP 5.4和更高版本中,可以使用以下内容:

 $purchaseOrder = (new PurchaseOrderFactory)->instance(); 

在以前的版本中,你必须调用一个variables的方法:

 $purchaseFactory = new PurchaseOrderFactory; $purchaseOrder = $purchaseFactory->instance(); 

注意:即使在升级到PHP 5.4之后,后者可能甚至更为有用/明智,因为这两行可以更好地分离,并且包含硬编码类名的代码较less,这里是工厂类PurchaseOrderFactory的名称。 这会让你更stream畅的维护代码。

更改为您的语法无效:

 $purchaseOrder = PurchaseOrderFactory::instance(); $arrOrderDetails = $purchaseOrder->load($customerName); 

在那里大概是instance()创build类的一个实例。 你可以做到这一点,而不是说new

你不能使用(这是无效的PHP语法):

 new PurchaseOrderFactory->instance(); 

你可能指的是其中之一:

 // Initialize new object of class PurchaseOrderFactory new PurchaseOrderFactory(); // Clone instance of already existing PurchaseOrderFactory clone PurchaseOrderFactory::instance(); // Simply use one instance PurchaseOrderFactory::instance(); // Initialize new object and that use one of its methods $tmp = new PurchaseOrderFactory(); $tmp->instance(); 
  • 哪个更快,python的网页或php的网页?
  • 要求文件夹中的所有文件
  • 如何在Visual Studio中使用PHP
  • 如何使用PHP检查数组是否为空?
  • CRON命令每5分钟运行一次URL地址
  • PHPMailer GoDaddy服务器SMTP连接被拒绝
  • 如何获得jQuery $ .ajax错误响应文本?
  • PHP CLI上的新行
  • 增加php的最大执行时间
  • 如何使用Google API客户端刷新令牌?
  • 从Laravel执行HTTP请求到外部API