Jump to content
  • 0

include


alexandr.coder
 Share

Question

Есть класс:

class welcome extends Controller {

public function __construct($data){
parent::__construct($data);
}

function strange(){
include (SYS_FOLDER."/views/welcome.tpl");
}

function index(){
echo "Выполняется...<br>";
$head = "Заголовок";
$text = "Работает.";
//$this -> strange();
include (SYS_FOLDER."/views/welcome.tpl");
}

}

welcome.tpl:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title><?php echo $head; ?></title>
</head>
<?php echo $text; ?>
<body>
</body>
</html>

Проблема в подключении файла welcome.tpl. Если написать include() в самом методе, о все работает. Но если поместить include() в отдельный метод то все перестает работать. Файл конечно подключается, но переменные $head и $text не могут быть выведены при подключении. Надо чтобы такое подключение происходило из другого метода. Как это сделать?

Link to comment
Share on other sites

14 answers to this question

Recommended Posts

  • 0

А что кто-то обещал незамедлительной бесплатной помощи? в бесплатных поликлиниках очереди видели?

Да и вообще , вам тут никто ничем не обязан.

Почитайте тут, может что-нить поймёте . Хотя доже ооп тут не причём, область видимости она логична, либо ... нет, вначале почитайте, а потом и поговорим на вашу тему .

Link to comment
Share on other sites

  • 0
Мда... видно как здесь помогают. Сразу сто сообщений за час!!! Или тут никто не знает, как это решить?

Откуда берутся переменные? Ну объявили вы класс, ну объявили методы... А откуда переменные-то должны браться?

UPD: Прочитайте про паттерн проектирования "MVC" - будет полезно.

Link to comment
Share on other sites

  • 0
Откуда берутся переменные? Ну объявили вы класс, ну объявили методы... А откуда переменные-то должны браться?

Непонял.

Читал. И не раз.

Link to comment
Share on other sites

  • 0
Так. Тут, похоже, не так всё просто. Попробуйте рассказать своими словами (не заглядывая в гугл и википедию) что такое переменая, класс, объект, метод.

Переменная - данное какого-то вида.

Класс - что-то типо шаблона для объекта

Объект - экземпляр класса

Метод - Функция класса

Link to comment
Share on other sites

  • 0
Переменная - данное какого-то вида.

Класс - что-то типо шаблона для объекта

Объект - экземпляр класса

Метод - Функция класса

А вот и не правильно. И пока не будет понятно что же это такое на самом деле, не получится программировать вообще.

Link to comment
Share on other sites

  • 0

Ну начнём с того, что переменная - некая поименованная область в памяти. Ну и остальное по аналогии. Надо понимать по какому принципу компилятор берёт данные из памяти и всё сразу же станет на свои места.

Link to comment
Share on other sites

  • 0
Можно ли подключить файл из другого метода, так чтобы в нем воспринемались переменные, объявленые внутри метода?

Можно, но для этого:

Либо переменные должны быть в области видимости,

либо они должны быть переданы функции в качестве параметра

Link to comment
Share on other sites

  • 0
Можно, но для этого:

Либо переменные должны быть в области видимости,

либо они должны быть переданы функции в качестве параметра

1.В области видимости значит в методе где подключается?

2.Переменные просто должны быть переданы в метод и всё?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy