gpt4 book ai didi

php - 当两个类在 PHP 中具有相同的名称时,如何引用所需的常量?

转载 作者:搜寻专家 更新时间:2023-10-31 21:53:07 25 4
gpt4 key购买 nike

我正在维护一个旧的 Zend 1.12 应用程序。此应用程序有两个名为 Document 的类 (application/models/Document.php),其中一个包含一组我需要引用的常量。

通常这工作得很好。然而,在一个帮助程序 (library/App/Helper/Action/Docusign.php) 中,一些不同的文档类 (library/Docusign/APIService.php) 被引用原因我猜不出来,当然它没有所需的常量。

如何指定在引用常量时应该使用哪个类?

$documentType = Document::DOCUMENT_TYPE_OTHER;

Fatal error: Access to undeclared static property: Document::$DOCUMENT_TYPES in ...

我也尝试过各种命名空间,但没有成功。 Zend 似乎在幕后做了一些事情来搞砸它 :P

我有什么建议吗?

最佳答案

如果,如您所说,您没有使用任何其他 namespace ,请将其粘贴在 library/Docusign/APIService.php 的最顶部:

<?php
namespace Docusign;

...

然后,当引用那个不同的类时,使用此代码:

$doc = new \Docusign\Document();
$documentType = Document::DOCUMENT_TYPE_OTHER;

请注意, library/Docusign/APIService.php 中的任何对象代码也需要命名空间。所以如果你有这样一行:

$date = new DateTime();

您需要将其更改为:

$date = new \DateTime();

关于php - 当两个类在 PHP 中具有相同的名称时,如何引用所需的常量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37307558/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com