PHP OOP - toString не работает - PullRequest
0 голосов
/ 28 июля 2011

У меня есть этот класс:

<?php

class config {
    var $config="";
    public function __construct($d) {
        switch(strtolower(trim($d))) {
            case "sql":
            $this -> config = array(...); 
            break;
        }
    }

    public function toString() {
            return $this -> config;
    }
}
?>

$c = new config("sql");// calling the class
echo $c; //error

Я получаю следующую ошибку:

( ! ) Catchable fatal error: Object of class config could not be converted to string in ..

почему не работает?

1 Ответ

3 голосов
/ 28 июля 2011

Имя магического метода должно быть

public function __toString()

Даже в этом случае ваше свойство $config выглядит как массив, поэтому вы просто не можете его вернуть.

...