2009-02-12 3 views
-2

Я пытаюсь заполнить частный элемент данных внутри класса с помощью параметра $_GET.

Возможно ли это, или это слишком сложно для конструктора для обработки?

/myfile.php?pid=f3f3rs2:

class getvalue{ 
private $pid; 
function __constructor(){ 
    $this->pid=$_GET['pid']; 

} 
public function get(){ 
    //if set 
    return $this->pid; 
} 
} 

$me=new getvalue(); 
echo $me->get(); 

решаемая - __construct неправильно набран.

ответ

2

Нет проблем. Это возможно.
В чем проблема с вышеуказанным кодом?

Редактировать Как сказал Чад, приведенный выше код не работает, потому что вы назвали в __construct(), как __constructor(). См. http://nl3.php.net/oop5.magic

+0

Ен это не работает! http://www.homestansted.co.uk/te.php?pid=4ga44 – 2009-02-12 21:52:58

0

Вы можете сделать это без проблем. Самый большой вопрос: должны ли вы это сделать? Некоторые могут утверждать, что вы должны передать значение $ _GET, а не получать его напрямую.

+0

Да, я слышу вас, но я хочу, чтобы класс был самодостаточным. – 2009-02-12 21:53:34

5

Если это не работает, это, вероятно, потому, что вы назвали функцию

__constructor() 

, когда правильное название

__construct() 
+0

извините, это происходит из фона C++. – 2009-02-12 21:55:34

+0

Решить проблему? Если это так, примите, что это ваш ответ. –

Смежные вопросы