我想从类函数内部调用 PHP 中的外部函数,但它不起作用。我已经尝试在 PHP 类文件的不同位置使用 include 和 require,但没有成功。以下函数位于 Amd.php 文件中<?phpfunction AmdGetFirstName($sUsername){ $oUserModel = new UserCoreModel; $iProfileId = $oUserModel->getId(null, $sUsername); $sFirstName = $oUserModel->getFirstName($iProfileId); unset($oUserModel); return $sFirstName;}现在我想使用以下代码从类函数中调用此函数:<?phprequire_once PATH_ROOT . '/Amd.php';class Design{ public function getProfileLink($sUsername) { $sFirstName = AmdGetFirstName($sUsername); $sHtml = '<a href="'; $sHtml .= (new UserCore)->getProfileLink($sUsername); $sHtml .= '" title="' . t("%0%'s profile", $sFirstName) . '">'; $sHtml .= $sFirstName . '</a>'; echo $sHtml; }}当我调试代码时,该函数AmdGetFirstName不是从公共函数中调用的getProfileLink。如果我使用相同的 require_once 语句在 index.php 文件中调用相同的函数,它运行得非常好。我所看到的不同之处在于,在 index.php 中,该函数不会在另一个函数或类函数中调用。我还尝试在具有相同结果的类函数中找到 require_once 语句。
2 回答
慕哥9229398
TA贡献1877条经验 获得超6个赞
<?php
class Design
{
public function getProfileLink($sUsername)
{
require_once PATH_ROOT . '/Amd.php';
$sFirstName = AmdGetFirstName($sUsername);
$sHtml = '<a href="';
$sHtml .= (new UserCore)->getProfileLink($sUsername);
$sHtml .= '" title="' . t("%0%'s profile", $sFirstName) . '">';
$sHtml .= $sFirstName . '</a>';
echo $sHtml;
}
}
江户川乱折腾
TA贡献1851条经验 获得超5个赞
我建议在使用 dirname( FILE ) 时将 Amd.php 包含在 include 中,如下所示:
include (dirname(__FILE__)."/Amd.php")
- 2 回答
- 0 关注
- 364 浏览
添加回答
举报
0/150
提交
取消