Перейти к контенту

вызов функции


Рекомендуемые сообщения

как вызвать функцию FUNC1 из класса CLASS1 находясь в функции FUNC2 класса CLASS2?

 

т.е. есть два файла классов, как функции оз одного класса сделать доступными для другого класса...

 

спасибо заранее

Ссылка на комментарий
Поделиться на других сайтах

Например так(не используя статику):

<?php
class class1
{
	function func1()
	{
		//do smth;
	}
}

class class2
{
	function func2()
	{
		$c1 = new class1();

		$c1->func1(); // exexute function from other class
	}
}
?>

Либо:

<?php
class class1
{
	function func1()
	{
		//do smth;
	}
}

class class2
{
	function func2()
	{
		class1::func1(); // exexute function from other class
	}
}
?>

 

См. http://www.php.net/manual/ru/language.oop.php

Ссылка на комментарий
Поделиться на других сайтах

возникает ошибка:

 

file1.php
<?php
class class1
{
	function func0()
	{
		 //do smth;
	}

	function func1()
	{
		this->func0();
		 //do smth;
	}
}
?>

file2.php
<?php
class class2
{
	function func2()
	{
		require_once "file1.php";
		class1::func1(); // exexute function from other class
	}
}
?>

 

при запуске func2 он пишет что func0 не определена..

Ссылка на комментарий
Поделиться на других сайтах

Я же сказал читать статью. Если коротко: При использовании первого предложенного способа создаётся объект в памяти, и определяется внутри его кода значение переменной $this(у вас кстати амперсанд пропущен). А если используется вызов статический, то функция вызывается без создания экземпляра класса => $this не определён.
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.