[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Взаимосвязь скриптов
CJRoman
Всем привет. Вот такой вопрос у меня:

Кодирую на рнр сравнительно недавно и неглубоко. Озадачился изучением ООП.
Суть вот в чем:

есть файл index.php - основная страница. в ней идет подключение файла functions.php - там подключается бд, и запрашивается список существующих модулей (из бд). после чего инклудами подключаются эти модули. И вот теперь вопрос: как мне из файла модуля обратиться например к БД, или к функции, которая была объявлена в классе в файле functions.php?
Я спинным мозгом чувствую, что без повторного инклуда файла functions.php не обойтись. Или есть в ООП такая возможность?

Иначе нафиг он вообще нужен, ооп этот... и без него прекрасно жилось. sad.gif



Спустя 1 час, 32 минуты, 4 секунды (18.07.2012 - 07:47) vagrand написал(а):
Цитата
functions.php - там подключается бд


Надо сделать отдельный файл с отдельным классом, который будет реализовывать функционал подключения к БД и вопроленния запросов.
Для модулей надо создать родительский класс, в котором через конструктор передавать объект класса для работы с БД. Тогда во всех модулях ты сможешь воспользоватся этим объектом.

А вообще ты спрашиваеш элементарные вещи и видно что не читал нормальной документации по ООП в PHP.

Спустя 2 часа, 24 минуты, 17 секунд (18.07.2012 - 10:11) Quieteroks написал(а):
Цитата
Я спинным мозгом чувствую, что без повторного инклуда файла functions.php не обойтись.


Вообще если ты из index файла уже загрузил объект и сразу после этого подгружаешь модули, то в модулях, по идее, уже есть доступ к объектам и функциям файла function.

Пример:
Файл index

include function.php


Файл funnction

function tets() {
return 'test';
}
include modul.php


Файл любого модуля...

echo test();


Результат будет вывод сообщения из функции.

Ну или я не так понял вопрос.

Спустя 25 минут, 27 секунд (18.07.2012 - 10:36) nikolasline написал(а):

require_once("file_name.php"); //подключение файла

$class = new ClassName; //экземпляр класса
$class->function_name(); // вызов функции

Спустя 1 час, 3 минуты, 18 секунд (18.07.2012 - 11:40) Guest написал(а):
Вот сделал как сказал Quieteroks (а точнее убрал всякие вот эти class'ы, public'и и все заработало. Но ведь это процедурное программирование.

А и катись оно лесом, это ООП, не понимаю я его.

Спустя 1 час, 39 минут, 59 секунд (18.07.2012 - 13:20) DarkLynx написал(а):
Цитата (Guest @ 18.07.2012 - 08:40)
Вот сделал как сказал Quieteroks (а точнее убрал всякие вот эти class'ы, public'и и все заработало. Но ведь это процедурное программирование.

А и катись оно лесом, это ООП, не понимаю я его.

Просто еще не дошли до этого.. Рано или поздно если будете заниматься, придете к мысли что нужно что то новое и тогда ООП откроет перед Вами свои врата..

Спустя 2 часа, 46 минут, 36 секунд (18.07.2012 - 16:06) kamanch написал(а):
DarkLynx
Ну ты прям, как миссионер в свою веру зазываешь smile.gif Врата свои открывает, блин... а прощение грехов? smile.gif

Спустя 3 часа, 6 минут, 16 секунд (18.07.2012 - 19:12) bodja написал(а):
Цитата
Врата свои открывает, блин... а прощение грехов?

Открывает врата с прощением грехов,как на крещении. biggrin.gif
А если серьезно,если не понимает ,правильно делает ,что не пишет.
Поймет ,тогда станет все на свои места.
Быстрый ответ:

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