所以当我在我的网站主机上托管它时,我的网站有问题。 我收到这个错误:
PHP Fatal error: Call to undefined function getSkillIcons()
奇怪的是,本地(Xampp)它运作得很好。
这是我包含函数的方法(在index.php中):
<?php include 'http://sub.website.com/incl/Settings.php'; ?>
这就是我所说的(index.php):
<div class="panel-body" style="text-align:center">
<?php getSkillIcons(explode(',', skills)); ?>
</div>
这是我如何定义技能(settings.php)
define("skills", "Test1,Test2,Test3,Test4");
这是函数本身:(settings.php)
function getSkillIcons($skills) {
echo '<a href="?skill=Overall" title="Overall" data-toggle="tooltip" data-placement="top"><img src="http://sub.website.com/incl/img/skill_icons/Overall-icon.png" class="skill-icon"></a>';
for ($i = 0; $i < count($skills); $i++) {
$tooltip = 'title="'.$skills[$i].'" data-toggle="tooltip" data-placement="top"';
echo '<a href="?skill='.$skills[$i].'" '.$tooltip.'><img src="http://sub.website.com/incl/img/skill_icons/'.$skills[$i].'-icon.png" class="skill-icon"></a>';
}
答案 0 :(得分:1)
调用未定义的函数错误清楚地表明它没有得到你定义的函数。原因是您附加了settings.php
http
文件的完整路径。
您需要在{index.php&#39;&#39;并确保settings.php
文件仅位于您的项目中。如果它与http
位于同一文件夹,则只需包含如下所示。
settings.php
如果您的index.php
文件位于其他网站但位于同一服务器中,则可以使用$ _SERVER [&#39; DOCUMENT_ROOT&#39;]包含该文件,如下所示:
<?php include 'settings.php'; ?>
如果您的settings.php
文件位于其他某个网站和其他服务器中,那么您需要更新<?php
$path = $_SERVER['DOCUMENT_ROOT'];
$path .= "/yourpath/settings.php";
include_once($path);
?>
中{strong>主要安全风险settings.php >。所以,如果您信任该网站,那么只能这样做。
allow_url_include=On