Php ООП

Печать RSS
131

S
Автор
Землянин
0
Начал применять объектно-ориенитованное программирование. предлагаю здесь задавать с ним связанные вопросы. И первый вопрос:
Как в классе использовать внешнюю переменную?
Сейчас делаю так:
<?php
$variable = 33;
class className()
{
var $outside = False;
}
$cl = new className();
$cl->outside = $variable;
Пробовал так:
<?php
$variable = 33;
global $variable;
class className()
{
var $res = "";
function getRes(){
$this->res = $variable+1;
}
}
$cl = new className();
echo $cl->res;
Но ничего не вышлоsmile Как это организовать проще того, как я написал в первом примере?smile
Изменил: SD (03.03.2010 / 01:16)
S
Автор
Землянин
0
Тьфу, напутал smile Пробовал примерно так:
<?
$variable = 33;
global $variable;
class className{
var $res = "";
function getRes(){
$this->res = $variable+1;
echo $this->res;
}
}
$cla = new className();
$cla->getRes();
Изменил: SD (03.03.2010 / 01:30)

2000 лет д.н.э.
0
<?php
//1.
class MyClass{
function __construct(){
global $var;
}
function set(){
return $this->var;
}
}
//2.
class MyClass{
function set(){
global $var;
return $var;
}
}
//3.
class MyClass{
public $var;
function _construct($var){
$this->var = $var;
}
}
$n = new MyClass();
echo $n->var;
echo $n->set();

2000 лет д.н.э.
0
Блин арбуз глючит страшно.
Короче
global $var; внутри функции
а лучше function name($var){
S
Автор
Землянин
0
А что за ф-я construct? Я так понимаю она автоматически выполняется?

2000 лет д.н.э.
0
__construct() вызывается при инициализации класса
__destruct() при завершении
class MyClass{
function __construct($var){
}
}
$n = new MyClass('data');
data - автоматом пойдет в __construct()

Землянин
0
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск