2012-03-14 3 views
0

ここはmy _toString()関数です。私はそれで間違ったものは見つけられませんが、このクラスのobjをエコーし​​ようとすると、ブラウザでエラーが発生し続けます。 "Catchable fatal error:クラスFractionのオブジェクトを文字列に変換できませんでした。_toString()PHP関数

public function _toString() 
{ 
    $str = ""; 
    if(($this->num/$this->den) >= 1) 
    { 
     $tmp = ((int)($this->num/$this->den)); 
     $str .= "{$tmp} ";  
    } 

    if ($this->num%$this->den != 0) 
    { 
     $tmp =$this->num % $this->den; 
     $str .= "{$tmp}/{$this->den}"; 
    } 
    return $str; 
} 

私の機能に問題があるのでしょうか、それとも何か他のものですか?ありがとう。

(。これは私が文字列で表現することを試みている分数クラスにあるの$ numは分子と$デンが分母である)

+0

機能を実行したいですか? – summea

答えて

3

あなたの関数定義の前からextra underscoreを使用してみてください:

public function __toString() { 
    // ... 
} 
+0

素晴らしい作品です!ありがとうございました! –

1

は、二重のアンダースコアで試してみてください:__toString()

1

はそれを魔法にするために、2つのアンダースコアがあるはずです。 __toString()