Этот урок набрал набрал достаточно большое количество комментариев и дальнейшее его комментирование отключено. Если вы хотели убедиться в правильности выполнения ДЗ или у вас возник вопрос по уроку, посмотрите ранее добавленные комментарии, кликнув по кнопке ниже. Скорее всего вы найдете там то, что искали. Если это не помогло - задайте вопрос в чате в телеграме - https://t.me/php_zone
SBTesla 24.08.2017 в 05:40

Когда следующий урок?)

ivashkevich 24.08.2017 в 16:41

В эти выходные запилю, обещаю)

serb2017 14.11.2017 в 13:27

В задании:

$var = include 'file.php';

Необычный результат получается.

var_dump($var);

Показывает int(1) 1

echo $var;

На экран вывел целую таблицу (header.php как в примерах выше)

ivashkevich 18.11.2017 в 13:27

Ну что же вы не осилили документацию?) В задании же написано что сначала нужно изучить.
P.S. Если уж совсем лень, то смотрите пункт "Выражения include и return". На момент написания данного комментария это "Пример #5".

Max 16.11.2017 в 22:32

У вас на редкость хорошие уроки, среди мегатонн разной хрени по интернету. Сужу по тому, что рекомендуете всегда пользоваться DIR при подключении. Многим это неведомо.

ivashkevich 18.11.2017 в 13:19

Спасибо)

1nSide 02.04.2018 в 14:43

Типа такого должно получится?
index.php

<?php

$content = file_get_contents(__DIR__ . '/news1.txt');

require __DIR__ . '/header.php';
include __DIR__ . '/sidebar.php';
//require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

sitedar.php

   <td id="sidebar">
        <?=
        $sidebar = 'Меню сайта';

            return $sidebar;
        ?>
    </td>
ivashkevich 02.04.2018 в 18:04

Типа того, только закомментированные строчки кода ни к чему.

1nSide 02.04.2018 в 14:56
<?php

$content = file_get_contents(__DIR__ . '/news1.txt');

require __DIR__ . '/header.php';
$sidebar = include 'sidebar.php';
//include __DIR__ . '/sidebar.php';
//require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';
1nSide 02.04.2018 в 14:57

Или так?

ivashkevich 02.04.2018 в 18:11

Нет, первый вариант правильный. Использование результата include или return нужно в случае, когда подключаемый файл возвращает что-либо через return. Иначе - результатом подключения файла будет 1.

$x = include __DIR__ . '1.php'; // $x == 1

Если же в файле 1.php будет что-то типа:

return 2 + 3;

То в таком случае в $x попадёт 5.

Для подключения шаблонов внутри других шаблонов можно просто писать

include __DIR__ . '/sidebar.php';
[email protected] 14.05.2018 в 19:40

Отличные уроки - лучшее что удалось найти в сети

ivashkevich 15.05.2018 в 17:19

Спасибо :)

RomVR 28.06.2018 в 12:29

А константа DIR присутствует только в OpenServer? Я Ваши примеры и задания выполняю в Ubuntu 16.04 (Apache2, PHP7.0) и DIR никак не проходит.

RomVR 28.06.2018 в 12:47

Всё нашёл в официальной документации по PHP. Извиняюсь за беспокойство. :)

ivashkevich 28.06.2018 в 18:31

Хорошо, привыкайте читать документацию ;)

[email protected] 17.07.2018 в 22:51

Такой вопрос.
Вижу тут нужно было до этого пройти курс по хтмл, я его не проходил ещё, вернее несколько месяцев назад хотел пройти, но забросил, знаю кое-что. Стоит ли его сейчас пройти? Либо это всё можна подхватить по ходу дела, просто уже начал php, чувствую что если начну html, то когда вернусь к php снова, многое из курса выпадет из головы. Посоветуйте как быть.

ivashkevich 19.07.2018 в 09:45

Если основы HTML хоть чуть-чуть изучали, то можете продолжать.

[email protected] 11.09.2018 в 21:47
<?php

$header = "<h1>Сайт, который я учусь делать с помощью ПХП</h1>";
$header1 = "Красивый слоган";
$sidebar = "Пункт 1<br>Пункт 2<br>Пункт 3<br>Пункт 4<br>";
$content = '<h2>Заголовок статьи</h2><p>Текст какой-то статьи</p>';
$footer = "Здесь, допустим, будут контакты.";

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';
ivashkevich 22.09.2018 в 10:05

Отлично!

[email protected] 11.09.2018 в 21:48

На 4 переменные для каждого блока фантазии не хватило)

Mike 19.11.2018 в 18:51
<?php
$header = '<h1> название сайта</h1><p>Сайт о том что...</p>';
$sidebar= '<h2> Меню </h2> <br><ol>Список<li>One</li><li>Two</li><li>Three</li></ol>';
$content= '<h2> Основной контент</h2> <br> <p>Случайное число <b>' . random_int(0,99) .'</b></p>';
$footer = 'Все права защищены (c) 2018г ';
require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';
ivashkevich 19.11.2018 в 22:31

В переменных теги не нужны - их нужно хранить в шаблоне.

bratko 19.12.2018 в 16:43

Тогда не нужно было самому показывать такой пример в данном уроке:

$content = '<h1>Заголовок статьи</h1><p>Текст какой-то статьи</p>';

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

ivashkevich 20.12.2018 в 09:12

Сорри, всё правильно)

Emiliano1986 12.03.2020 в 12:23

test.

ivashkevich 20.12.2018 в 09:12

Сорян, я упоролся, всё нормально, это же контент страницы)

[email protected] 20.11.2018 в 03:06

А почему вот эта строчка:
$varInc = require 'footer.php';
Является аналогом вот этой:
require './footer.php';
?
Не знаю, правда, можно ли это коротко объяснить будет)

virtual2018 20.11.2018 в 15:19

так как во всех операционных системах общее правило для каталогов (папок):
../ - это обращение к каталогу один уровень вверх
./ - это обращение к каталогу в котором находимся.
По умолчанию считается, что если перед именем файла ничего не указано, например footer.php, то это равнозначно ./footer.php

[email protected] 20.11.2018 в 15:57

Это я понимаю. Вопрос немного не в этом был. Когда я пишу в коде вот эту строчку:
$varInc = require 'footer.php';
То у меня подключается файл footer.php
Точно также, как он подключается, когда я пишу вот это:
require './footer.php';
То есть в первом случае я как бы просто инициализирую переменную $varInc и больше ничего не делаю, но при этом у меня происходит подключение файла, как-то это нелогично. То есть обе эти строки по отдельности делают одно и тоже. Может у меня что не так работает_))

virtual2018 20.11.2018 в 19:30

require 'footer.php' - помимо собственно подключения файла footer.php, всегда возвращается еще и результат этого действия, просто в первом случае Вы его используете передавая в переменную и потом сравнив можете что-то еще сделать: повесить функцию, выдать сообщение и т.п., а во втором случае просто не используете.

[email protected] 20.11.2018 в 23:17

Ага, вроде понял, спасибо

Emiliano1986 12.03.2020 в 12:25

test

virtual2018 20.11.2018 в 15:12

//index.php

<?php
?>
<html>
<head>
    <title>Особенности использования include</title>
</head>
<body>
<? $str = include __DIR__.'/string.php'; echo $str; ?>
<!--выведем строку так как в string.php есть return  -->
<br>
<? $str = include __DIR__.'/no_string.php'; echo $str; echo '<br>'.$stringText ?>
<!-- сначала выведем 1, файл no_string.php успешно подключен, а потом переменную 
stringText -->
<br>
</body>
</html>

//string.php

<?php
    $stringText = '<h2> Test return string </h2>';
    return $stringText;
?>

//no_string.php

<?php
    $stringText = '<h2> Test return string </h2>';
?>
ivashkevich 20.11.2018 в 23:43

В index.php теги PHP в начале файла ни к чему. Закрывающий тег в файлах, в которых только PHP-код, не ставится. Можете погуглить почему. И спасибо что помогли ученику выше :)

bratko 19.12.2018 в 16:37

По поводу задания:

$var = include 'file.php';

Интересно, правильный ли мой вариант..
В index.php я добавил код:

$var = include __DIR__ . '/file.php';

В file.php я добавил:

<?php
$social = 'Социальные кнопки для FOOTER';
return $social;
?>

И теперь в footer.php вставил в специальном нужном мне месте:

<?= $var ?>

И всё работает. Получается из footer.php идет обращение к переменной $var, которая находится в index.php и в которую был положен file.php, а в file.php уже то что мне нужно, чтоб вывелось в footer.php в нужном месте. Но возник сразу вопрос, правильно ли это? Потому как в file.php могут быть разные переменные и разные данные и тогда в нужном мне месте выведет кучу информации, которая не актуальна для того места. Как тогда быть?

ivashkevich 20.12.2018 в 09:15

Всё правильно. А для того чтобы были только нужные переменные в нужном месте, стоит подключать файлы там, где они непосредственно нужны (в твоем примере подключать file.php внутри footer.php)

XXX 05.01.2019 в 00:16
<?php

$nameHeader='Warhhamer 40000';
$advertising='Валидол';
$warhImper='Император';
$creatorSite='Starosta';

require __DIR__ . '/header.php';
require __DIR__ . '/siderbar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

файл header. В остальных так же выводятся переменные.

<!DOCTYPE html>

<html>
<head>
    <title>Warhammer 40000</title>
    <style>
        table, td {
            border: solid black 1px;
            border-collapse: collapse;
        }

        #layout {
            width: 800px;
            margin: auto;
        }

        #layout td {
            padding: 20px;
        }

        #sidebar {
            width: 300px
        }
    </style>
</head>
<body>
<table id="layout">
    <tr>
        <td colspan="2"><center><?php echo $nameHeader; ?></center></td>
    </tr>
ivashkevich 05.01.2019 в 08:01

А тайтл почему захардкожен?

XXX 05.01.2019 в 15:25

Не совсем понял что значит захардкожен? Из двух слов?

ivashkevich 05.01.2019 в 21:10

Почему текст между тегами title явно написан. Должна использоваться переменная $nameHeader по идее

Pro100Bah 23.01.2019 в 19:07

Сделал по уроку

<?php

$content = '<h1>Заголовок статьи</h1><p>Текст какой-то статьи</p>';
$header = '<h1>Что-то вношу в заголовок...</h1><br><p>Вроде понимаю как это все делать)))</p>';
$header1 = '<h2><img src="/images/prog.jpg" width="200" alt="Картинка программиста"></h2><p>Красота!!!</p>';
$header2 = '<p><strong>Нелегкий труд учить PHP</strong></p>';
$header3 = '<h4><a href="https://php.zone">Ссылка на курс, который я учу!!!</a> </h4><br><p>Тяжело</p>';
require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

А вот код куда вставлены переменные

<html>
<head>
    <title>Заголовок страницы</title>
    <style>
        table, td {
            border: solid #000000 1px;
            border-collapse: collapse;
        }

        #layout {
            width: 800px;
            margin: auto;
        }

        #layout td {
            padding: 20px;
        }

        #sidebar {
            width: 300px
        }
    </style>
</head>
<body>
<table id="layout">
    <tr>
        <td colspan="2"><?= $header, $header1, $header2, $header3?></td>
    </tr>
    <tr>

Не стал делать для каждого блока сделал для одного . Думаю правильно понял задание.

ivashkevich 23.01.2019 в 22:01

Вполне норм, только конкатенацию строк нужно делать через точку, а не через запятую.

Grewi 12.03.2019 в 02:00

Главная страница

$title = 'Собираем страницу по кусочкам';
$styleHeader = 'background-color: #6FA9FE; border: 1px solid #999; border-radius: 3px; color: #444; font-size: 30px; text-align: center; padding: 48px; margin: 10px;';
$contentHeader = 'Заголовок страницы';
$styleFooter = 'background-color: #6f8efe; border: 1px solid #999; border-radius: 3px; padding: 0; margin: 10px; display: table; width: calc(100% - 20px);';
$blockFooter = 'padding: 25px; margin: 0; color: #444; font-size: 16px; text-align: center; width: 50%; float: right;';
$blockFooterR = 'padding: 25px; margin: 0; color: #444; font-size: 16px; text-align: center; width: 50%;';
$contentFooter = 'Содержимое блоков в подвале сайта';
$sideBarStyle = 'background-color: #e1dcff; border: 1px solid #999; border-radius: 3px; padding: 0; margin: 10px 0 10px 10px; float: left; width: 200px;';
$sideBarMenuStyle = 'margin: 15px; line-height: 2; min-height: 300px;';
$sadeBarText = 'Другая страница </br> Еще страница </br> Ссылка туда </br> Просто строка';
$contentStyle ='background-color: #6FA9FE; border: 1px solid #999; border-radius: 3px; margin: 10px; width: calc(100% - 250px); float: right; }';
$contentH1Style ='text-align: center; font-family: sans-serif; margin: 25px 0; color: #05144f;';
$contentH1='Заголовок страницы';
$contentTxt='Текст страницы';

include __DIR__.'/header.php';
include __DIR__.'/sidebar.php';
include __DIR__.'/content.php';
include __DIR__.'/footer.php';

/header.php

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title><?= $title ?></title>
</head>
<body>
<header style="<?= $styleHeader ?>"> <?= $contentHeader ?>  </header>

/sidebar.php

<div style="<?= $sideBarStyle ?>">
    <div style="<?= $sideBarMenuStyle ?>">
        <?= $sadeBarText ?>
    </div>
</div>

/content.php

<div style="<?= $contentStyle ?>">
    <h1 style="<?= $contentH1Style ?>"><?= $contentH1 ?></h1>
    <p><?= $contentTxt ?></p>
</div>

/footer.php

<footer style="<?= $styleFooter ?>">
    <div style="<?= $blockFooter ?>">
        <?= $contentFooter ?>
    </div>
    <div style="<?= $blockFooterR ?>">
        <?= $contentFooter ?>
    </div>
</footer>
</body>
</html>
ivashkevich 12.03.2019 в 09:44

ОК)

Boodoo 31.03.2019 в 23:19
<?php
    $header = 'This is header.';
    $sidebar = 'This is sidebar';
    $content = 'This is content';
    $footer = 'This is footer';

    include_once __DIR__ . '/header.php';
    include_once __DIR__ . '/sidebar.php';
    include_once __DIR__ . '/content.php';
    include_once __DIR__ . '/footer.php';
ivashkevich 01.04.2019 в 22:14

Ок)

[email protected] 04.05.2019 в 17:45

насколько я понял мы можем с помощью include в нужных местах выводить информацию которая будет хранится на отдельном файле,и до вызова include не будет видна не кому

ivashkevich 08.05.2019 в 10:50

В том числе и для этого.

[email protected] 04.05.2019 в 17:45
$count = 6;
$string = 'Hello Artem';
$practic = 4 / 2;
require __DIR__ . '/main.html';

include 'vars.php';
echo  $color;
[email protected] 04.05.2019 в 17:54
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>MY practics</title>
    <link rel="stylesheet" type="text/css" href="../main.css">
</head>
<body>
    <div class="one"><?=$count ?></div>
    <div class ="hello"><?=$string ?></div>
    <div class="practic"><?=$practic ?></div>
</body>
ivashkevich 08.05.2019 в 10:51

По идее внутри vars.php уж тогда объявить все переменные. Подключить в основном файле vars.php, а следом шаблон.

[email protected] 08.05.2019 в 12:37

я так и сделал,предыдущие переменные у меня в файле php только другом а var.php я подключил просто показать что я пробовал

ivashkevich 10.05.2019 в 13:32

Ок

Moskva 08.05.2019 в 20:55

Код config.php:

<?php
return 'Это просто заглушка';

Код index.php:

<?php

$gag = include_once __DIR__ . '/config.php'; // require_once подключится один раз, остальные проигнорирует
 echo $gag;
                                            // include_once подключится один раз, остальные проигнорирует

$content1 = file_get_contents(__DIR__ . '/news.txt');// Извлекаем из файла текст
$content2 = file_get_contents(__DIR__ . '/news2.txt');
$content3 = file_get_contents(__DIR__ . '/news3.txt');
$content4 = file_get_contents(__DIR__ . '/news4.txt');

$header1 = '<h1>Главные новости</h1>';
$header2 = 'Всё актуальное';
$header3 = '<strong>важное</strong>';
$header4 = '<i>интересное </i>здесь';

$sidebar1 = '<li><ol>Главное</ol> ';
$sidebar2 = '<ol>Законы</ol>';
$sidebar3 = '<ol>Погода</ol>';
$sidebar4 = '<ol>Обратная связь</ol></li>';

$footer1 = '<h5>Номер телефона мерии ';
$footer2 = '<i>88005553535</i>';
$footer3 = 'проще позвонить, чем у кого-то спрашивать. ';
$footer4 = 'Отвечаем с 9:00 - 21:00.</h5>';

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

Остальной код это создание таблицы и вывод переменных.

ivashkevich 10.05.2019 в 13:32

Хорошо

Clawson 27.08.2019 в 19:56

А тут разве в sidebar-ах не намудрено со списками? в одном элементе списка 4 списка без элементов Оо

ivashkevich 28.08.2019 в 06:18

Не обратил внимания на верстку даже. Ерунда, конечно)

bratko 14.05.2019 в 16:34

По поводу

$var = include 'file.php';

Я изучил документацию. Понял, что допустим если в file.php будет использоваться return:

<?php

$information = 'Какая-то информация';
return $information;

?>

То на экран выведет "Какая-то информация". А если return не будет:

<?php

$information = 'Какая-то информация';

?>

То выведет просто "1", типа файл был подключен. Но для чего это нужно?

ivashkevich 16.05.2019 в 00:17

Чтобы использовать результаты вычислений в других файлах. Можно вынести какую-то логику в отдельный файл и использовать возвращаемое значение. Сейчас к такому редко прибегают, так как есть функции и методы, позволяющие выносить логику в более удобные компоненты.

Aleks 07.08.2019 в 16:04
<?php

$content = '<h1>Заголовок статьи</h1><p>Текст какой-то статьи</p>';
$header = '<p><strong>ШАПКА САЙТА</strong></p>';
$footer = '<p><em>Здесь у нас контакты и карта проезда</em></p>';
$sidebar = '<p><strong>Реклама =)</strong></p>';

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

https://gyazo.com/830ee33798a7ad601ea964c9ecbeb004

ivashkevich 07.08.2019 в 18:52

Отлично

[email protected] 07.08.2019 в 17:26

вот они больные фантазии =)

<?php

$content = '<h1>Вкуснейшими кокосами</h1><p>из морозилки</p>';
$header = '<h1>Хэллоу мир</h1><p>Прекрансый мир</p>';
$sidebar = '<h1>Мир заполненный манго</h1>';
$footer = '<h1> Солнышком, теплым морем</h1><p>и любимыми людьми </p>';
$footer1 = '<p> хорошо жить </p>';
require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

header**жирный текст**
<?php
?>
<html>
<head>
    <title>Заголовок страницы</title>
    <style>
table, td {
    border: solid black 1px;
            border-collapse: collapse;
        }

        #layout {
            width: 600px;
            margin: auto;
        }

        #layout td {
            padding: 20px;
        }

        #sidebar {
            width: 300px
        }
    </style>
</head>
<body>
    <table id="layout">
        <tr>
            <td colspan="2"><?=$header ?></td>;

        </tr>
        <tr>

**sidebar**
<?php
?>
<td><?=$sidebar?> </td>;
**content**
<?php
?>
<td><?= $content ?></td>
**footer**

<?php
?>
</tr>
    <tr>
        <td colspan="2"><?=$footer?><?=$footer1?></td>
    </tr>
</table>
</body>
</html>
ivashkevich 07.08.2019 в 18:53

Тег h1 должен быть единственным на странице.

[email protected] 09.08.2019 в 21:15

то есть все остальные h1 должны быть p? Простите не совсем поняла :(

ivashkevich 10.08.2019 в 06:51

Нет. Они могут быть чем угодно, h2, например. Но заголовок h1 должен быть единственным - это название страницы. Их не может быть несколько.

Clawson 27.08.2019 в 20:08

https://pastenow.ru/be22414cf1fb677fb14d11f96f1d400c

index.php

<?php
$header = '<h1>HEADER</h1>';
$sidebar = '<ul><li><a href="#">ссылка 1</a></li><li><a href="#">ссылка 2</a></li><li><a href="#">ссылка 3</a></li></ul>';
$content = '<h2>Заголовок статьи</h2><p>Какой-то текст...</p>';
$footer = '<h2>FOOTER</h2>';

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

Пример вставки переменной в файле sidebar.php

<td id="sidebar"><?= $sidebar ?></td>

Я так понимаю дальше мы будем текст тащить из бд, загонять его в шаблон, а шаблон вызывать в index.php?

ivashkevich 28.08.2019 в 05:59

Чуточку сложнее. Но ход мыслей верный.

Dreft 01.09.2019 в 19:00
<?php
$content = '<h1>Поздравляем!</h1>' . '<p>Вы выиграли ' . rand() . ' рублей</p>' ;
$header = '<h1>Лохотрон</h1>';
$sidebar .= '<h4>Меню</h4>';
$sidebar .= '<p>Главная</p>';
$sidebar .= '<p>Розыгрыш</p>';
$sidebar .= '<p>О нас</p>';
$footer = '<h2>ОАО "Лохотрон" &copy; 2019</h2>';
require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';
ivashkevich 02.09.2019 в 05:01

Ок)

H3licoptero 19.09.2019 в 00:05
$title = 'Подключение файлов в PHP';
$content = '<h2>Муки и радости</h2><p>Вариации на любую тему.</p>';
$sidebar = '<h2>Меню</h2><ul><li>Статьи</li><li>Галерея</li><li>О нас</li></ul>';
$header = '<h1>Добро пожаловать!</h1>';
$foot = '<h3>Контактная информация</h3>';

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require  __DIR__ . '/content.php';
require __DIR__ . '/footer.php';
ivashkevich 19.09.2019 в 09:12

Ок

kvakazuabr 09.10.2019 в 00:54

header.php

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
  <link rel="stylesheet" href="style.css">
</head>
<body>
  <header>HEADER</header>

sidebar.php

<main>
      <aside id="sidebar">SIDEBAR</aside>

content.php

   <section><?= $content ?></section>
</main>

footer.php

    <footer>FOOTER</footer>
  </body>
</html>

index.php

$content = '<h1>Заголовок статьи</h1><p>Текст какой-то статьи</p>';

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

style.css

body {
  text-align: center;
}

header {
  height: 100px;
  background-color: burlywood;
  border: 1px solid #000000
}

main {
  display: flex;
  height: 180px;
}

#sidebar {
  width: 27%;
  background-color: burlywood;
  border: 1px solid #000000
}

section {
  width: 73%;
  padding-top: 45px;
  background-color: bisque;
  border: 1px solid #000000
}

footer {
  height: 100px;
  background-color: burlywood;
  border: 1px solid #000000
}
ivashkevich 09.10.2019 в 02:59

Отлично. Про тег main - не уверен, что он должен содержать сайдбар.

[email protected] 10.10.2019 в 20:30

index.php

<?php
$content = '<h1>Заголовок статьи</h1><p>Текст какой-то статьи</p>';
$contacts = '<span> Адрес, телефон</span>';
$adv='<span> Реклама </span>';
$about='<span> Немного о нас</span>';
require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

header.php

<?php
?>
<html>
<head>
    <title>Заголовок страницы</title>
    <style>

    </style>
</head>
<body>
<span><?=$about?> </span>

sidebar.php

<?php
?>
<span><?=$adv?></span>

content.php

<?php
?>
<span><?= $content ?></span>

footer.php

<?php
?>
<span><?=$contacts?> </span>

Над позиционированием не поработала. Все таки надо было сделать таблицей как у вас...

ivashkevich 10.10.2019 в 21:59
<?php
?>

Для чего везде эти пустые теги?

    <style>

    </style>

И это что такое?

[email protected] 10.10.2019 в 23:53
 надо удалить!
ivashkevich 11.10.2019 в 05:55

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

[email protected] 11.10.2019 в 08:25
index.php
<?php
$content = '<h1>Заголовок статьи</h1><p>Текст какой-то статьи</p>';
$contacts = '<span> Адрес, телефон</span>';
$adv='<span> Реклама </span>';
$about='<span> Немного о нас</span>';
require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

header.php
<html>
<head>
    <title>Заголовок страницы</title>
</head>
<body>
<span><?=$about?> </span>

sidebar.php
<span><?=$adv?></span>

content.php
<span><?= $content ?></span>

footer.php
<span><?=$contacts?> </span>
ivashkevich 11.10.2019 в 09:03

Отлично

sar16520 14.10.2019 в 09:22
<!-- баннер -->
<html>
    <head>
        <title>HelloWorld!</title>
        <link rel="stylesheet" href="style.css">
    </head>
    <body>
        <table>
            <tr >
                <td colspan="2"><?php echo $banner; ?></td>
            </tr>
            <tr>
<!-- сайдбар -->
<td><?php echo $sidebar; ?></td>
<!-- контент -->
<td><?php echo $content; ?></td>
<!-- Подвал      -->
        </tr>
            <tr>
                <td colspan="2"><?php echo $footer; ?></td>
            </tr>
        </table>
    </body>
</html>
<?php //функции

$banner= '<h1>Шапка</h1><p>Содержимое<p>';
$sidebar= '<h1>Сайдбар</h1><p>Содержимое</p>';
$content= '<h1>Контент</h1><p>Содержимое</p>';
$footer= '<h1>Подвал</h1><p>Содержимое</p>';
<?php //Индекс
include __DIR__.'/function.php';
include __DIR__.'/bunner.php';
require __DIR__.'/sidebar.php';
require __DIR__.'/content.php';
require __DIR__.'/footer.php';
// Стили .less
table, td{
    border: solid black 1px;
           border-collapse: collapse;
}
table{
    width: 800px;
    margin: 0 auto;
    td{
    padding: 20px;
}
}
ivashkevich 14.10.2019 в 09:31

Баннер нужно заменить на хедер.
И это не функции никакие, а набор переменных.

sar16520 15.10.2019 в 09:55

Ааа... Да. Я просто назвал как удобнее было)

ivashkevich 15.10.2019 в 10:38

Нужно называть так, чтобы всем было понятно. Лучше переделайте.

[email protected] 19.12.2019 в 01:16

Зачем использовать DIR, есть просто писать файл или папка/файл, то он и так будет смотреть в своей директории

ivashkevich 19.12.2019 в 07:43

Не в своей. Почитайте документацию. В лучшем случае он будет смотреть туда же, откуда был запущен весь код.
То есть если создать такую структуру файлов и папок:

www
  L index.php
  L 1/
    L 1.php
    L 1/
      L 1.php

И написать следующий код в файлах:

www/index.php

<?php
include '1/1.php';
www/1/1.php

<?php
include '1/1.php';
www/1/1/1.php

<?php
echo 42;

То всё сломается, потому что в файле www/1/1.php инклуд будет работать от папки www.

eNergy 11.01.2020 в 09:58

1) Выполнил
2) Выполнил
3) Если в подключаймом файле нет return, то выражение

$var = include 'file.php';

можно использовать например для проверки наличия этого файла и выполнения какого то кода

if ($var) { // выведет 1 это true
    // какой то код
}

Второй вариант, если в подключаемом файле есть return, то можно вернуть из него значение переменной, функции

ivashkevich 11.01.2020 в 11:04

Отлично

[email protected] 13.01.2020 в 13:44
<?php

$headerNameAndMenu = "<h1>Название сайта</h1><p>Перечень разделов с выпадающими меню</p>";
$sidebarNews = "<span>Новости сайта </span>";
$contentArticle = "<h2>Заголовок статьи</h2><span style='color: red;'> красивый img </span><p>Текст статьи</p>";
$footerDifferent = "<span>Продублированное меню, перемотка вверх, контакты </span>";

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

Результат: https://prnt.sc/qmyuab

ivashkevich 15.01.2020 в 06:08

Отлично

serjioG 01.03.2020 в 14:25
$var = include 'file.php';
$config = include 'config.php';
echo $config;

На экран вышло: Это просто заглушка1;
То есть $config получила значение 1 поскольку подключился файл успешно и вернулось TRUE, если был бы return то можно вернуть значение переменной

<?php
$content = '<h1>Заголовок страницы</h1> Содержимое страницы';
$header = '<h1> Заголовок шапки</h1> мини описание шапки';
$button = '<h3>Курсы PHP.Zone</h3> Обучайся программированию на портале PHP.Zone';
$footer = '<h3> КОНТАКТЫ</h3> Друг, да именно ты, не забудь подписатся в социальных сетях, а также на канал PHP.Zone в телеге, там много интересно!';

$config = include 'config.php';
echo $config;

require __DIR__ . '/Header.php';
require __DIR__ . '/Sidebar.php';
require __DIR__ . '/Content.php';
require __DIR__ . '/Footer.php';
ivashkevich 05.03.2020 в 03:03

Отлично

ursaminor 04.03.2020 в 13:30

Подскажите, пожалуйста, как исправить следующую ошибку :
Cannot save D:\OSPanel\domains\myproject.loc\www\functions.php.
Unable to create a backup file (functions.php~).
The file left unchanged.

ivashkevich 05.03.2020 в 03:22

Где возникает эта ошибка?

ursaminor 05.03.2020 в 22:12

при попытке сохранить php-файл. До этого работало все окей, все сохранялось.

ivashkevich 06.03.2020 в 05:59

Что за ОС? В какой программе сохраняете?

studentDev 08.03.2020 в 12:35

Суть кода $var = include 'file.php' - будет обозначать подключение определенного файла и будет выводит те значение которые мы написали пусть это будет return, echo или любое значение. При подключение файла в переменную $var, мы сможем прописать эту переменную где угодно и будет выводить результаты которые мы обозначили в данном файле... (Конечно если понятно объяснил :/ - я прочитал документацию и понял суть). Спасибо огромное за данный урок! :)
Пример кода:

//includePhp.php
$var = "This my first text!";
return $var; //При указаний echo ещё будет выводить 1 возле текста

//MainPage.php
$includeText = include __DIR__ . '/includePhp.php'; //В документации указано без "__DIR__" без него у меня ошибка :/
echo $includeText; //Выведет текст с подключаемого файла includePhp.php
ivashkevich 09.03.2020 в 08:18

Отлично

Lungren 24.03.2020 в 17:20
<?php
    $content = '<h1>Заголовок статьи</h1><p>Какой-то текст</p>';
    $header = '<p style="font-family:Arlekino; font-size:20px; text-align:center;">Это- хэдер</p>';
    $sidebar = '<p>Здесь будет меню</p>';
    $footer = '<p style="font-family:arlekino; font-size:20px; text-align:center;">Это самая нижняя часть- футер!</p>';
    $footer_2 = '<p align="center">А что ещё здесь написать-то?</p>';

    require __DIR__ . '/site/header.php';
    require __DIR__ . '/site/sidebar.php';
    require __DIR__ . '/site/content.php';
    require __DIR__ . '/site/footer.php';

?>
ivashkevich 24.03.2020 в 19:17

Ок, закрывающий тег не нужен

Timurik 09.04.2020 в 15:03

index.php:

$header = '<h1>Шапка какой-то статьи</h1>';
$sidebar = '<h1>Сайдбар</h1><h2><p>Первый</p><p>Второй</p><p>Третий</p></h2>';
$content = '<h1>Заголовок статьи</h1><p>Текст какой-то статьи</p>';
$footer = '<h1>Подвал какой-то статьи</h1>';

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

header.php:

<html>
<head>
    <title>Заголовок страницы</title>
    <style>
        table, td {
            border: solid black 1px;
            border-collapse: collapse;
        }

        #layout {
            width: 800px;
            margin: auto;
        }

        #layout td {
            padding: 20px;
        }

        #sidebar {
            width: 300px
        }
    </style>
</head>
<body>
<table id="layout">
    <tr>
        <td colspan="2"><?= $header ?></td>
    </tr>
    <tr>

sidebar.php:

<td id="sidebar"><?= $sidebar ?></td>

content.php:

<td><?= $content ?></td>

footer.php:

</tr>
<tr>
    <td colspan="2"><?= $footer ?></td>
</tr>
</table>
</body>
</html>
ivashkevich 09.04.2020 в 15:49

Отлично

Allaga 12.04.2020 в 00:40
$header = '<h1>Заголовок сайта</h1><span>Lorem ipsum dolor sit amet, consectetur.</span>';
$sidebar = '<h2>Меню</h2><ul><li>Путкт1</li> <li>Путкт2</li><li>Путкт3</li><li>Путкт4</li><li>Путкт5</li></ul>';
$content = '<H2>Заголовок контента</H2>';
$footer = '<h2>Footer</h2>';

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

header.php
<!doctype html>
<html lang="ru">
<head>
    <title>Подключение файлов в php</title>
    <link rel="stylesheet" href="style.css">
</head>
<body>
<header>
    <h1><?= $header ?></h1>
</header>

sidebar.php
<div class="sidebar">
    <h2><?= $sidebar ?></h2>
</div>

content.php
<div class="content">
    <H2><?= $content ?></H2>
    <p>
       <span>
         Lorem ipsum dolor sit amet, consectetur adipisicing elit. Aliquid amet culpa dolor
         exercitationem incidunt labore perferendis quo, ullam vel voluptatum? Accusantium alias
         blanditiis itaque perferendis qui quibusdam ratione, sint voluptatum?
       </span>
    </p>
</div>

footer.php
  <footer>
    <h2><?= $footer ?></h2>
  </footer>
</body>
</html>

style.css
body {
    width: 900px;
    margin: 0 auto;
    color: #f58cdc;
}
header {
    height: 100px;
    background-color: aqua;
    padding-left: 10px;
}
.sidebar {
    float: left;
    width: 25%;
    height: 400px;
    background-color: blue;
}
.content {
    width: 75%;
    float: left;
    height: 400px;
    background-color: aquamarine;
}
footer {
    background-color: darkmagenta;
    padding: 0 0 30px 10px;
}
ivashkevich 13.04.2020 в 12:54

Отлично

[email protected] 13.04.2020 в 07:50

Добрый день!

index.php

<?php
$headTel='<span> Телефон</span>';
$headWww='<span> О нас</span>';
$headEmail='<span> E-mail</span>';
$headTime='<span> Время работы</span>';

$article1 = '<h3>Скидки на покрышки 13 VW</h3><p>Резина от GooD YeaR....</p>';
$article2 = '<h3>Скидки на покрышки 14 VW</h3><p>Резина от GooD YeaR....</p>';
$article3 = '<h3>Скидки на покрышки 15 VW</h3><p>Резина от GooD YeaR....</p>';
$article4 = '<h3>Скидки на покрышки 16 VW</h3><p>Резина от GooD YeaR....</p>';

$side1 = '<span> Vw</span>';
$side2 = '<span> Ford</span>';
$side3 = '<span> Opel</span>';
$side4 = '<span> BMW</span>';

$manufacturerGr='<span> Производитель Германия </span>';
$manufacturerRu='<span> Производитель Россия </span>';
$manufacturerFr='<span> Производитель Франция </span>';
$manufacturerCh='<span> Производитель Китай </span>';

header.php

<html>
<head>
    <title>Автозапчасти</title>
</head>
<body>
<b><?=$headTel ?> </b>
<b><?=$headWww?> </b>
<b><?=$headEmail?> </b>
<b><?=$headTime?> </b>

content.php

<td><?= $article1?></td>
<td><?= $article2?></td>
<td><?= $article3?></td>
<td><?= $article4?></td>

sidebar.php

<span><?= $side1?></span>
<span><?= $side2?></span>
<span><?= $side3?></span>
<span><?= $side4?></span>

footer.php

<b><?= $manufacturerGr?></b>
<b><?= $manufacturerRu?></b>
<b><?= $manufacturerFr?></b>
<b><?= $manufacturerCh?></b>

</body>
</html>
ivashkevich 13.04.2020 в 14:53

Не забывайте оформлять код в комментариях. В остальном всё ок

Developer 14.04.2020 в 18:07

index.php

<?php

$content = '<h2>Большая статья</h2><p>Текст какой-то статьи</p><p>Продолжение текста</p>';
$sidebar = '<ul><li>Меню1</li><li>Меню2</li><li>Меню3</li> ';
$style = '<style>
        table, td {
            border: solid black 1px;
            border-collapse: collapse;
        }
        #layout {
            width: 800px;
            margin: auto;
        }
        #layout td {
            padding: 20px;
            border: 2px solid blue;
        }
        #sidebar {
            width: 250px;
        }
        li {
            width: 100px;
            height: 20px;
            border: 1px solid red;
        }
    </style>';
$header = '<h1>Интересная статья про программирование</h1><p><strong>Читайте на здоровье</strong></p>';
$footer = '<h3>Правовая информация</h3><h4>Ярославль 2020 год</h4>';

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

header.php

<html>
<head>
    <title>Заголовок страницы</title>
    <?= $style ?>
</head>
<body>
<table id="layout">
    <tr>
        <td colspan="2"><?= $header ?></td>
    </tr>
    <tr>

sidebar.php

<td id="sidebar"><?= $sidebar ?></td>

content.php

<td><?= $content ?></td>

footer.php

</tr>
<tr>
    <td colspan="2"><?= $footer ?></td>
</tr>
</table>
</body>
</html>

Выражения $var = include 'file.php';
Если мы просто подключаем файл без переменной, то выводиться содержимое файла.
Если используем переменную, но в файле file.php нет ни return ни echo, то при вызове переменной выведется содержимое файла и единица, так как подключение было успешным.
Если в файле file.php есть return или echo, то в переменную запишется какое то значение которое можно использовать.
Всё верно?

ivashkevich 14.04.2020 в 19:50

Нет, не верно. Перечитайте документацию и напишите, в чем была ошибка в вашем ответе.

Developer 15.04.2020 в 17:16

Не знаю кем и для кого была написана эта документация, но для меня она совершенно не информативна. Я больше из комментариев узнаю, которые я прочитал, сам попробовал потыкать и написал итог. Но если это не правильно, тогда такой вариант:

  • Переменную $var мы можем использовать как отображение успешности подключения файла либо успешности выполнения кода в файле. Если нет в подключаемом файле return.
  • Или если в подключаемом файле есть return, то можно вернуть значение переменной или функции и присвоить ее в $var. Чтобы затем использовать $var в других местах.

А что интересно делать если в файле много return(ов). Что тогда возвращается?

ivashkevich 15.04.2020 в 17:49

Если в файле file.php есть return или echo, то в переменную запишется какое то значение которое можно использовать.

echo просто выведет значение, но не приведет к тому, что оно вернется при использовании require

[email protected] 18.04.2020 в 21:46

Немного не понял, зачем создавать переменную в index с содержанием, допустим, main , потом подключать файл(допустим content.php), который её же и вызывает. Практический смысл этого будет понятен далее? Пока что в первой и второй части домашки я вижу нагромождение в файле index.

<?php
$content = '
<main>
    <img src="img/photo2.png" alt"">
    <p>
        Привет всем.
    </p>
</main>';
$header = '
<body>
<header>
    <nav>
        <a href="">ссылка</a>
        <a href="">ссылка</a>
        <a href="">ссылка</a>
        <a href="">ссылка</a>
    </nav>
</header>
<h1>Что-то типа сайта</h1>';
$sidebar = '
<section>
    <p>
        Здесь что-то будет.
    </p>
</section>
';
$footer = '
<footer> Все права защищены 2020</footer>

</body>

</html>';
require __DIR__ . '/header.php';
require __DIR__ . '/content.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/footer.php';
?>
ivashkevich 19.04.2020 в 15:35

Смысл в том, чтобы вы поняли, что эти переменные можно использовать в подключенных файлах. Ровно как и то, что переменные, определенные в подключенных файлах будут доступны и в том месте, где файлы подключили.

[email protected] 19.04.2020 в 16:30

Спасибо!

[email protected] 26.04.2020 в 12:02
<?php
$content = '<h1>Заголовок статьи</h1>Текст какой-то статьи';
$header = '<h1>Название сайта</h1>';
$sidebar = '<h2>Реклама и объявления</h2>';
$footer = '<h3>Контакты и схема проезда</h3>';

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';
ivashkevich 26.04.2020 в 14:30

Отлично

Artt 28.04.2020 в 16:22

/index.php

<?php

$header = file_get_contents(__DIR__ . '/header.txt');
$content = file_get_contents(__DIR__. '/news1.txt');
$sidebar = file_get_contents(__DIR__ . '/menu.txt');
$footer = file_get_contents(__DIR__ . '/footer.txt');

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

/header.php

<html>
<head>
    <title>Website example</title>
    <style>
        h1 {
            text-align: center;
        }
        table, td {
            border: solid 1px black;
            border-collapse: collapse;
        }
        table {
            width: 70%;
            margin: auto;
        }
        #sidebar {
            width: 25%;
        }
        td {
            padding: 20px;
        }
        #mainpage {
            text-align: center;
        }
        #footer {
            text-align: center;
        }
    </style>
</head>
<body>
<table>
    <tr>
        <td colspan="2"><?= $header ?></td>
    </tr>
    <tr>

/header.txt

<h1>You can place your site name or logo here</h1>

/sidebar.php

<td id="sidebar"><?= $sidebar ?></td>

/menu.txt

<h2>Categories</h2>
<ul>
    <li>Home page</li>
    <li>About us</li>
    <li>Contacts</li>
</ul>

/content.php

<td id="mainpage"><?= $content ?></td>

/news1.txt

<h2>Main page</h2>
Here you can write news about your website and place another content!

/footer.php

</tr>
<tr>
    <td colspan="2", id="footer"><?= $footer ?></td>
</tr>
</table>
</body>
</html>

/footer.txt

Here you can place company contacts, your social networks etc.<br>
Site name 2020 All rights reserved ©
ivashkevich 28.04.2020 в 19:29

Отлично

annferny 06.05.2020 в 18:04

//index.php

<?php
$header = '<h1>Предметы ручной работы</h1>';
$content = '<h2>Галерея</h2><img src="bag.jpg">';
$aside = '<ul >
            <li>Главная</li>
            <li>Галерея</li>
            <li>Доставка</li>
            <li>Контакты</li>
          </ul>';
$footer = '<p>Телефон: +7888888888</p>
           <p>e-mail: [email protected]</p>';

include __DIR__ . '/header.php';
include __DIR__ . '/aside.php';
include __DIR__ . '/main.php';
include __DIR__ . '/footer.php';

//style.css

body {
    font-family: "Arial";
    background-color: cornsilk;
    padding: 40px;
}
main{
    text-align: center;
    margin-bottom: 100px;
}
h1 {
    text-align: center;
}
ul{
    color: blue;
    text-decoration: underline;
}
aside{
    height: 100%; 
    width: 160px; 
    position: fixed; 
    z-index: 1; 
    top: 0; 
    left: 0;
    overflow-x: hidden; 
    padding-top: 20px;
}
footer{
    font-size: small;
    line-height: 5px;
}

//header

<!DOCTYPE html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title>Страничка</title>
    <link href="style.css" rel="stylesheet">
</head>
<body>
<header>
    <?= $header ?>
</header>

//aside

<aside>
    <?= $aside ?>
</aside>

//main

<main>
    <?= $content ?>
    <h3>Проверка выражения</h3>
    <?php
        $var = include 'test.php';
        echo $var;?>
</main>

//footer

<footer>
    <?= $footer ?>
</footer>
</body>
</html>

//test.php

<?php
$x = 'Выражение работает';
return $x;
ivashkevich 07.05.2020 в 16:46

Отлично

IePyton 07.05.2020 в 15:49
<?php

$titleInHeader = '<title>Заголовок окна браузра</title>';
$sidebarMenu = '<ul><li><a href="#">пункт1</a></li><li><a href="#">пункт2</a></li></ul>';
$content = '<h1>H1 страницы</h1><p>Текст страницы</p>';
$copyrightInFooter = 'Все права защищены 2020';

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';
ivashkevich 08.05.2020 в 20:13

Отлично

[email protected] 28.05.2020 в 12:39

<?php

$content = file_get_contents(__DIR__ . '/nuws1');

$footer = '<div style="text-align: center"><h3>Мы всегда тут</h3>
<i>все права защищены &#8482;</i></div>';

$sidebar = '<h3><u>Главная</u><br><u>Подглавная</u>
<br><u>Приглавная</u><br><u>Обглавная</u></h3>';

$header = '<div style="text-align: center">
<h1><b>HI my favorite friend</b></h1></div>';

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php.';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';
ivashkevich 28.05.2020 в 20:37

Отлично

UtillitE 26.06.2020 в 17:16

Привет, мой вариант.

<?php

$content = '<h1>Заголовок статьи</h1><p>Текст какой-то статьи</p>';
$header = '<h1>Здесь какой-нибудь красивый текст</h1><p>Картинка</p>';
$sidebar = '<h1>Меню и регистрация</h1><p>Картинка</p>';
$footer = '<h1>Все права защищены 2020</h1>';

require __DIR__ . '/ header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';
ivashkevich 27.06.2020 в 16:45

Отлично

[email protected] 25.07.2020 в 11:38
<?php

$header = '<h1>Название сайта</h1>';
$sidebar = '<h1>Меню</h1><p>Строки меню</p>';
$content = '<h1>Заголовок статьи</h1><p>Статья о чем нибудь.</p>';
$footer = '<p>Контактные данные</p>
           <p>Текст о правах</p>';

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';
ivashkevich 25.07.2020 в 19:47

Отлично

MikeSiebel 07.09.2020 в 14:14

Добрый день!
Макет сайта. Через переменные можно менять контент, высоту колонок, менять и добавлять пункты меню.

index.php

<?php

$content = '<h1>London</h1><p>London is the capital city of England. 
      It is the most populous city in the  United Kingdom, 
      with a metropolitan area of over 13 million inhabitants.</p>
      <p>Standing on the River Thames, London has been a major settlement for two millennia, 
       its history going back to its founding by the Romans, who named it Londinium.</p>';
$height = 'height: 300px';//column height
$the_cities1 = 'London';
$the_cities2 = 'Paris';
$the_cities3 = 'Tokyo';
$the_cities4 = '';//free to fill
$the_cities5 = '';//free to fill

require __DIR__ . '/header.php';
require __DIR__ . '/nav.php';
require __DIR__ . '/article.php';
require __DIR__ . '/footer.php';

header.php


<!DOCTYPE html>
<html>
<head>
    <meta name="keywords" content="" />
    <meta name="description" content="" />
    <title>CSS Template</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <style>
        header {
            background-color: #666;
            padding: 10px;
            text-align: center;
            font-size: 35px;
            color: white;
        }
        /* Create two columns/boxes that floats next to each other */
        nav {
            float: left;
            width: 30%;
            <?= $height ?>;
            background: #ccc;
            padding: 20px;
        }
        /* Style the list inside the menu*/
        nav ul {
            list-style-type: none;
            padding: 0;
        }

        article {
            float: left;
            padding: 20px;
            width: 62.9%;
            background-color: #f1f1f1;
            <?= $height ?>;
        }
        /* Clear floats after the columns */
        section {
            height: 100%;
            clear: both;
        }
        body > div{
            clear: both;
        }
        html {
            height: 100%;
        }
        article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
            display: block;
        }
        body {
            margin: 0 auto;
            font: 12px/18px Arial, sans-serif;
            width: 100%;
            height: 100%;
        }
        .wrapper {
            margin: 0 auto;
            min-height: 100%;
        }
        footer {
            clear: both;
            background-color: #777;
            height: 50px;
            margin: 50px auto 0;
            text-align: center;
            color: white;
        }
    </style>
</head>

<body>
<div class="wrapper">
    <header>
        <h2>Cities</h2>
    </header>

nav.php

<section>
    <nav>
        <ul>
            <li><a href="#"><?= $the_cities1 ?></a></li>
            <li><a href="#"><?= $the_cities2 ?></a></li>
            <li><a href="#"><?= $the_cities3 ?></a></li>
            <li><a href="#"><?= $the_cities4 ?></a></li>
            <li><a href="#"><?= $the_cities5 ?></a></li>
        </ul>
    </nav>

article.php

<article>
    <?= $content ?>
</article>
</section>
<div></div>
</div><!-- .wrapper -->

footer.php

<footer>
    Footer
</footer><!-- .footer -->
</body>
</html>
ivashkevich 08.09.2020 в 18:36

Отлично!

[email protected] 04.11.2020 в 19:37

С файлами вопросов нет.
По этому заданию:
Изучите официальную документацию по include и изучите как можно использовать выражения вида
$var = include 'file.php';

Насколько я понял такая запись добавляет значение файла в переменную.
Если в файле была вызван return, при echo выведется то, что было возвращено функцией return.
Если не было return, то выдаст значение 1.

Правильно?

ivashkevich 06.11.2020 в 16:00

Что такое значение файла?
Где в вашем примере echo?
Дайте больше контекста, так пока непонятно)

pixel 05.11.2020 в 15:33
<?php
    $headNews = "
        <h1>Главная страница</h1>
        <h2>Автор: Стукалов Владислав</h2>";
    $sidebarItem = "
        <ul>
            <li><a href='#'>Главная</a></li>
            <li><a href=''>О сайте</a></li>
            <li><a href=''>Новости</a></li>
            <li><a href=''>Форум</a></li>
        </ul>";
    $contentTitle = "
        <h1>Первая статья</h1>
        <p>
            Lorem ipsum dolor sit amet, consectetur adipisicing elit.
            Adipisci asperiores blanditiis consectetur, cupiditate dolor ea eaque enim, hic incidunt inventore iste,
            necessitatibus nobis pariatur quas ratione rerum sed sunt voluptatum!
        </p>";
    $footerNews = "<p>Автор Владислав Стукалов</p><p>2020</p>";

    if (file_exists(__DIR__ . '/header.php')) {
        include __DIR__ . '/header.php';
    }
    if (file_exists(__DIR__ . '/sidebar.php')) {
        include __DIR__ . '/sidebar.php';
    }
    if (file_exists(__DIR__ . '/content.php')) {
        include __DIR__ . '/content.php';
    }
    if (file_exists(__DIR__ . '/footer.php')) {
        include __DIR__ . '/footer.php';
    }
ivashkevich 06.11.2020 в 16:05

Отлично

kan22 20.11.2020 в 15:24

index.php

<?php

$header = '<h1><a href="#">Сайт о Cyberpunk 2077</a></h1>';
$sidebar = '<ul><li><a href="#">Новости</a></li><li><a href="#">Купить игру</a></li></ul>';
$content = '<h2>Выход Cyberpunk 2077.</h2><p>Вчера должен был выйти Cyberpunk 2077, но увы....</p>';
$poster = '<img src="img/poster.jpg" alt="постер Cyberpunk 2077" width="600px">';
$date = '<time>2020-11-20</time>';
$footer = '<p>Надеемся Cyberpunk 2077 выйдет 10 декабря.</p>';

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';

header.php

<html lang="ru">
<head>
    <title>Cyberpunk 2077</title>
    <style>
        table, td {
            border: solid black 1px;
            border-collapse: collapse;
        }

        li {
            list-style-type: none;
        }

         a {
            color:  #000000;
            text-decoration: none;
        }

        li a:hover {
            color:  #8b00ff;
        }

        time {
            margin-left: 525px;
        }

        #layout {
            width: 800px;
            margin: auto;
        }

        #layout td {
            padding: 20px;
        }

        #sidebar {
            width: 300px
        }
    </style>
</head>
<body>
<table id="layout">
    <tr>
        <td colspan="2"><?= $header ?></td>
    </tr>
    <tr>

sidebar.php

<td id="sidebar"><?= $sidebar ?></td>

content.php

<td><?= $content ?><br><?= $poster?><br><?= $date?></td>

footer.php

</tr>
<tr>
    <td colspan="2"><?= $footer ?></td>
</tr>
</table>
</body>
</html>
ivashkevich 23.11.2020 в 17:28

Отлично!

[email protected] 05.12.2020 в 14:55
<?php
$titleSite = "Динамический title";
$header = "<h1>Сайт myproject.loc</h1>";
$sidebar = "Пункт 1<br>Пункт 2<br>Пункт 3<br>Пункт 4<br>";
$content = '<h2>Заголовок статьи</h2><p>Текст какой-то статьи</p>';
$footer = "<div>Футер сайта</div>";

require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';
require __DIR__ . '/footer.php';

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title><?= $titleSite ?></title>
</head>
<body>
<?= $header ?>
<main>

Смысл задания понятен, структура как в wordpress)
ivashkevich 06.12.2020 в 07:22

Отлично)

Khrystyna 21.01.2021 в 18:21

index.php

<?php
require_once DIR . '/config.php';
require_once DIR . '/config.php';
require_once DIR . '/config.php';

$content = file_get_contents(DIR. '/news1.txt');

require DIR. '/header.php';
require DIR. '/sidebar.php';
require DIR. '/content.php';
require DIR. '/footer.php';

ivashkevich 23.01.2021 в 20:17

Нужно оформить код в комментарии (в редакторе комментариев самая первая кнопка).
Нажмите на карандашик и поправьте ваш комментарий, пожалуйста. А потом ответьте мне на этот комментарий. После этого проверю вашу домашнюю работу и отвечу на вопросы.

Vladimir96 16.02.2021 в 16:54
<?php
$header = 'Шапка этого мини сайта';
$content = 'Заголовок статьи<br>Текст какой-то статьи';
$sidebar = 'Боковушечка';
$footer = 'Футер';
require __DIR__ . '/header.php';
require __DIR__ . '/sidebar.php';
require __DIR__ . '/content.php';
require __DIR__ . '/footer.php';
// второе задание
$var = include 'file.php';

данная инструкция подходит для возврата и обработки подключаемого файла, то есть
мы не просто подключаем файл и он что-то делает, мы его возвращаем как-то используем либо проверяем файл, а если не возвращаем то в переменной будет 1 (означает что файл успешно подключен, но он ничего не возвращает).

ivashkevich 20.02.2021 в 04:56

Верно

Deo 19.02.2021 в 00:44

Эдентичны ли следующие методы подключения файла:
include __DIR__ . '/file.php'иinclude './file.php'

ivashkevich 20.02.2021 в 06:58

Нет.

Во втором случае если будет следующая структура:

index.php
<?php
include __DIR__ . '/files/1.php';
/files/1.php
<?php
include './2.php';
/files/2.php
<?php
echo 123;

То ничего не заработает при обращении к index.php. Так как вот этот код:

include './2.php';

Будет искать файл 2.php не в папке files, а рядом с файлом index.php

Deo 21.02.2021 в 03:28

Спасибо, реализовал Ваш ответ наглядно (создал и запустил соответвующие директории и файлы) и сразу всё понял, спасибо :)

ivashkevich 22.02.2021 в 12:24

Пожалуйста)

serega19860511 13.04.2021 в 23:23

Сделал может не по заданию:
index.php

<?php
include __DIR__ . '/header.php';
include __DIR__ . '/sidebar.php';
include __DIR__ . '/content.php';
?>
    <td id="sidebar">
        <a href="#"><?= $a; ?></a><br>
        <a href="#"><?= $b; ?></a><br>
        <a href="#"><?= $c; ?></a><br>
    </td>
    <td><?= $content; ?></td>
<?php
include __DIR__ . '/footer.php';

header.php

<?php
$header = 'логотип и слаган сайта';
?>

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        table, td {
            border: solid black 1px;
            border-collapse: collapse;
        }

        #layout {
            width: 800px;
            margin: auto;
        }

        #layout td {
            padding: 20px;
            text-align: center;
        }

    </style>
</head>
<body>
<table id="layout">
    <tr>
        <td colspan="2"><?= $header; ?></td>
    </tr>
    <tr>

footer.php

<?php
$contacts = include __DIR__.'/contacts.php';
?>

</tr>
<tr>
    <td colspan="2"><?= $contacts; ?></td>
</tr>
</table>

</body>
</html>

contacts.php

<?php
$contact = 'наши контакты';
return $contact;

Ну и анологично с контентом и сайтбаром, только вот шторм почему то меня материт в файле index, типа переменные не определены, но файлы то я подключил и на сайте всё работает скрин ошибки скрин локального проекта

ivashkevich 17.04.2021 в 20:51

Всё ок, шторм не умеет понимать что переменная объявлена в другом файле. Можно ему подсказать с помощью phpdoc @var

Логические задачи с собеседований