[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: использовать объект в классе
Guest
есть объект от некого класса
$o = new classssss();
$o->name = "Piter";

есть другой класс
class my
{
function myMeth()
{
$this->name = $o->name;
}
}


мне мне использовать объект внутри класса, не передавая его как параметр.?
Nikitian

$o=&$GLOBALS['o'];
Guest
Nikitian
спс
linker
Nikitian
В php 5 объекты и так передаются по ссылке.

Глобалсы зло
class classssss
{
protected static $it = null;
public $name = '';

protected function __construct() {}

public static function Get()
{
return !is_null(self::$it)
?
self::$it
: self::$it = new self();
}
}

$o = classssss::Get();
$o->name = "Piter";
есть другой класс
class my
{
function myMeth()
{
$this->name = classssss::Get()->name;
}
}


_____________
Gear Framework
Gear Framework на Github
Семён
$o=&$GLOBALS['o'];

Порнография
Shturman
У меня обратная проблема. Нужно в классе использовать переменную, созданную в основном коде. Как к ней обратиться правильно?
Пример:

$string = 'example';

class A{
function PrintString()
{
echo parent::string; // Вот так не работает
}
}


$A =& new A();
$A->PrintString();

Говорит, нет переменной $string в области видимости класса.
Гугл результата не дал...
Basili4
function PrintString()
{
global $string;
... далее по тексту

только без парент

_____________
Цитата
От постоянного сидения рядом с клавиатурой начинает болеть спина.


Делаю сайты, пишу скрипты php, js.
Shturman
Пасиб, ща попробую! smile.gif
Shturman
Есть контакт! Благодарствую wink.gif
ZSH
а передать в класс ее нельзя?

$string = 'example';

class A{
function PrintString($string)
{
echo $string;
}
}


$A =& new A();
$A->PrintString($string);


$string = 'example';

class A{

function __construct($string)
{
$this->string = $string;
}

function PrintString()
{
echo $this->string;
}
}


$A =& new A($string);
$A->PrintString();
Shturman
Можно, но всегда полезно знать, как из класса получить переменные, созданные в области выше wink.gif
linker
Про это
$A =& new A($string);
забудь, нужно просто
$A = new A($string);


_____________
Gear Framework
Gear Framework на Github
Гость_Ann
Есть класс с функцией вывода индексов массива. Создаем объект класса и через объект вызываем функцию. Массив пуст.В чем ошибка?

<?
class MyArr{
public $arr = array();

function __construct(){

$this->arr= array();

}
function Mindex(){

print_r(array_keys($this->arr));

}
}

$a = new MyArr();
$a-> a = "один";
$a-> b = "два";
$a-> c = "три";

$a->Mindex();
?>
Игорь_Vasinsky
в конструктор аргументом $arr

return в методе

или echo после инициализации класса.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Игорь_Vasinsky
и удостоверься что short tags включены

а класс то кривенький

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.