6

PHP で次のエラーが発生します。

PHP Fatal error:  Call to undefined function getCookie

コード:

include('Core/dAmnPHP.php');
$tokenarray = getCookie($username, $password);

dAmnPHP.php の内部には、クラス dAmnPHP 内に getCookie という関数が含まれています。スクリプトを実行すると、関数が未定義であることがわかります。

私は何を間違っていますか?

4

2 に答える 2

9

関数を使用する前に、クラスの新しいインスタンスを作成する必要があるようです。

試す: $dAmn = new dAmnPHP; $dAmn->getCookie($username, $password);

以前にdAmnを使用したことがないため、確信が持てませんが、ここから情報を引き出しました: https://github.com/DeathShadow/Contra/blob/master/core/dAmnPHP.php

于 2012-05-30T13:38:22.467 に答える
4

このエラーを再現する方法:

これを a.php というファイルに入れます。

<?php
include('b.php');
umad();
?>

これを b.php というファイルに入れます。

<?php
class myclass{
  function umad(){
    print "ok";
  }
}
?>

それを実行します:

PHP Fatal error:  Call to undefined function umad() in 
/home/el/a.php on line 4

何が悪かったのか:

最初にインスタンス化せずにクラス内でメソッドを使用することはできません。次のようにします。

<?php
include('b.php');
$mad = new myclass;
$mad->umad();
?>

次に、php インタープリターはメソッドを見つけることができます。

eric@dev ~ $ php a.php
ok
于 2014-08-18T17:37:25.313 に答える