Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как вставить часть страницы html в другую страницу html одного сайта при помощи php. (нужен полный код)

Есть такая задачка. В одном файле HTML (назовем его 2.html) есть блоки вида:<div>1</div>. Помимо этого блока есть много других, например <div>2</div>, <div>3</div> и т.д.

Мне нужно, идеально при помощи PHP, в другой файл HTML (назовем его 1.html), скопировать в определенное место блок :<div>1</div> из файла 2.html, автоматически. Таким образом, внося любые изменения в блок <div>1</div> в файле 2.html, в файле 1.html также менялась информация.

Как это сделать?

СайтыHtmlPhp
CybJoke
  · 4,5 K
Программист  · 9 сент 2021
Есть несколько вариантов решения данной задачи.
1) Как уже заметил Леонид, использовать стандартную подгрузку страниц PHP.
Пример:
файл /1.php:
<html><body>
<?php
$array_values = ['text 1', 'Текст 2', 'Что-то еще'];
foreach($array_values as $value)
    include('2.php');
?>
</body></html>
файл /2.php:
<div><?php echo $value; ?></div>
2) Загрузить страницу как строку, и менять заготовленные якоря на данные которые надо под них подставить.
файл /1.php:
<?php 
    $strTemplate = file_get_contents('./2.что_угодно'); 
    $array_values = ['text 1', 'Текст 2', 'Что-то еще'];
?>
<html><body>
    <?php foreach($array_values as $value)
        echo str_replace('#value#', $value, $strTemplate); ?>
</body></html>
файл /2.что_угодно:
<div>#value#</div>
3) Использовать один из шаблонизаторов, например во фреймворке Laravel есть встроенный шаблонизатор blade, на котором пример будет следующим:
в /route/web.php
Route::get('/', function(){
    return view('main', [
        'array_values' => ['text 1', 'Текст 2', 'Что-то еще']
    ]);
});
в /resources/views/main.blade.php
<html><body>
    @foreach($array_values as $value)
        @include('div', ['value'=>$value])
    @endforeach
</body></html>
в /resources/views/div.blade.php
<div>{{$value}}</div>
Для php существуют еще шаблонизаторы Twig, Smarty, Mustache и Volt.
У каждого свои особенности и фишки написания шаблонов.
Сеть магазинов автозапчастей "Транзит"  · 29 апр 2020  · ford-transit.spb.ru
Отвечает
Леонид

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