1. ホーム
  2. php

[解決済み] PHP Fatal error: 未定義の関数への呼び出し?

2022-02-04 09:59:49

質問

だから私は私のウェブホストでそれをホストしているとき、私のウェブサイトに問題がある。 私はこのエラーを取得します。

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>';
    }

解決方法は?

未定義関数への呼び出しエラーは、明らかに、あなたが定義した関数が取得されていないことを示しています。その理由は、あなたが settings.php ファイルを http .

を含める必要があります。 settings.php ファイルから http のパスを'index.php'の一番上に設定し settings.php ファイルはプロジェクト内にのみ存在します。もし、このファイルが index.php であれば、以下のようにインクルードすればよい。

<?php include __DIR__.'/settings.php'; ?> 

もし settings.php ファイルが他のフォルダにある場合は、 $_SERVER['DOCUMENT_ROOT'] を使用して、以下のようにそのファイルをインクルードすることができます。

<?php 
$path = $_SERVER['DOCUMENT_ROOT'];
$path .= "/yourpath/settings.php";
include_once($path);