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

Общие функции.


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

Есть некий класс с неким набором функций.

 

class A
{
function X
(
)

function Y
(
)
}

 

Фишка в том, что эти же функции используются и в других классах. Поэтому логично вынести их в отдельный файл, допустим f.php:

function X
(
)

function Y
(
)
}

,

 

а внутри класса заинклудить этот f.php. Встаёт вопрос, как эти функции вызвать в нужный момент внутри класса?

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

Обычно для этого используют наследование. Иначе и незачем было в начале добавлять эти функции именно как методы классов.

 

Вызывать как обычные функции

X();

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

Если просто вызвать - напишет ошибку Call to undefined function X() Изменено пользователем zapretnyii_plod
Ссылка на комментарий
Поделиться на других сайтах

потому что надо правильно задавать вопросы

показать весь код, а не Х, У, Q

 

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

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

Ладно, конкретно. Есть отдельный файл вот с такой функцией fbank.php

<?php

class bank_func
{
	function is_bank()
	{
	   $member_id = $this->ipsclass->member['id'];
	   //Проверяем есть ли банковская лицензия
	   $this->ipsclass->DB->build_and_exec_query(array('select'=>'i_id','from'=>'market_inventory','where'=>"member_id='$member_id' and item='114'"));
	   if ($this->ipsclass->DB->get_num_rows() == 0)
	   {
		  return false;
	   }
	   else
	   {
		  return true;
	   }
	}
}

 

Далее есть другой класс

<?php
class item_check extends template_item
{
...

function public_use_form
{
require_once( ROOT_PATH."sources/fbank.php" );   //Тут вызывается этот самый файл и надо каким-то образом следующей строкой вызвать функцию is_bank()
}
}

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

Если эти функции выносятся в bank_func как общие и не относящиеся к объектам, то логично делать их статическими, если нет причин против этого...
Ссылка на комментарий
Поделиться на других сайтах

Не очень понятно, что значит сделать эти функции статическими. Поясни.
Ссылка на комментарий
Поделиться на других сайтах

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

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

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

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

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

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

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

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

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

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

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