Создать html через php

Создать файл .html с php

Я хочу создать новый .html-файл, используя php-скрипт, поскольку я новичок в php, я не понимаю, чтобы это сделать. Я основал код, но он не работает.

я хочу, чтобы при загрузке моей страницы новый файл .html должен был быть создан в моем каталоге path / с некоторыми элементами, такими как заголовок и т. д. в моем html-файле

Может кто-нибудь мне помочь??

Лучший способ сделать это – написать небольшой пустой html-файл и сохранить его где-нибудь; например, «template.html»

1) в PHP вы можете прочитать его с помощью

$newcontent = file_get_contents("template.html"); 

2) открыть новый файл с fopen, написать новый контент, закрыть файл. Готово.

if (!file_exists('newname.html')) < $handle = fopen('path/to/new/file/newname.html','w+'); fwrite($handle,$newcontent); fclose($handle); > 

Итак, есть две части создания нового файла:

Сначала вам нужно создать контент этого файла. Здесь вы можете комбинировать HTML и PHP-код. Например

Или используйте nay template engine или генератор кода – и сгенерировали сохранение кода в любую переменную, которую вы будете использовать в качестве содержимого созданного файла.

И тогда вы можете создать собственный файл:

`$Filename` means name of generated file (including its path) `$Mode` means mode of file generation 

Оба аргумента могут передаваться также напрямую (например, fopen(‘file.ext’, ‘a’) )

Написание содержимого файла следует

$Status = fwrite($File, $TagCode); 

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

Существуют следующие способы открытия файлов

  • a – содержимое файла не перезаписывается; только для добавления контента; новый контент размещается ниже старого контента
  • Содержимое + – файл не перезаписывается; для добавления / чтения контента; новый контент размещается ниже старого контента
  • r – содержимое файла может быть прочитано только
  • r + – содержимое файла не перезаписывается ;, для добавления / чтения содержимого; новый контент размещается над старым контентом
  • w – содержимое файла перезаписывается, только для добавления содержимого
  • w + – содержимое файла перезаписывается; для добавления / чтения содержимого

Вместо этого функции fopen , fwrite и fclose могут использоваться также file_puts_content , но мне больше нравится fopen, fwrite и fclose.

Источник

Генерация html на PHP

Предлагаю вашему вниманию свое решение по генерации html на PHP. Задача вроде бы тривиальная, но хотелось бы, чтобы это было расширяемо, кратко, но в тоже время с хорошим функционалом. Получилось вроде не плохо.

Сразу скажу( как многие считают в комментариях), что задача ставилось не написать шаблонизатор (которых и так много) и не заменить шаблонизатор JavaScript. Я прекрасно знаю, что true way это разделять html и данные. Но мне понадобилось писать html в классах, для создания компонентов фреймворка, на подобие CGridView в yii, стоит ли в таких местах выносить html в отдельные файлы решать вам.

Основная цель, избавится от html в классах и функциях.

Простой пример, обычная кнопка:

CHtml::create() ->p() ->a(array('href' => 'http://habrahabr.ru', 'class' => 'btn')) ->text('Перейти') ->render(); 

Ничего хитрого, можно было бы этим и ограничется, но захотелось циклы:

 $arr = array('1' => 'Первый', '2' => 'Второй'); CHtml::create() ->select($options) ->each(CHtml::plainArray($arr, 'value', 'text')) ->option('array("value" => $data->value)') ->text('$data->text') ->end() ->endEach() 
$arr = array( array('value' => '1', 'text' =>'Первый'), array('value' => '2', 'text' => 'Второй') ); 

Теги внутри цикла могут содержать функции или строки с eval выражениями, вложенность любая, пример с таблицей:

$columns = array( array('id' => 'NAME', 'label' => 'Имя'), array('id' => 'AGE', 'label' => 'Возраст') ); $data = array( array('NAME' => 'Петр', 'AGE' => 29), array('NAME' => 'Василий', 'AGE' => 32) ); CHtml::create() ->table() ->thead() ->tr() ->each($columns) ->th() ->text(function($column)< return $column['label']; >) ->end() ->endEach() ->end() ->end() ->tbody() ->each($data) ->tr() ->each($columns) ->td() ->text(function($row, $column) < return $row[$column['id']]; >) ->end() ->endEach() ->end() ->endEach() ->render(); 

Незакрытые теги закрываются автоматически.

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

 class CMyHtml extends CHtml < public function a($options = array()) < $default = array( 'href' =>'javascript:void(0)' ); return parent::a(array_replace($default, $options)); > > 
class CForm < private $_lastLabel = ''; public function __construct(CModel $model, CHtml $html = null) < $this->_model = $model; $this->_html = $html ?: CHtml::create(); > public function __call($method, $ps) < $options = $ps ? $ps[0]: array(); if ($method === 'label') < $this->_lastLabel = isset($options['for']) ? $this->_model->getLabel($options['for']) : ''; > if ($method === 'text' && $this->_lastLabel) < $options = $options ?: $this->_lastLabel; $this->_lastLabel = ''; > $this->_html->$method($options); return $this; > > 

Само решение можно посмотреть и попробовать на github.

Источник

Your first PHP-enabled page

Create a file named hello.php and put it in your web server’s root directory ( DOCUMENT_ROOT ) with the following content:

Example #1 Our first PHP script: hello.php

Use your browser to access the file with your web server’s URL, ending with the /hello.php file reference. When developing locally this URL will be something like http://localhost/hello.php or http://127.0.0.1/hello.php but this depends on the web server’s configuration. If everything is configured correctly, this file will be parsed by PHP and the following output will be sent to your browser:

This program is extremely simple and you really did not need to use PHP to create a page like this. All it does is display: Hello World using the PHP echo statement. Note that the file does not need to be executable or special in any way. The server finds out that this file needs to be interpreted by PHP because you used the «.php» extension, which the server is configured to pass on to PHP. Think of this as a normal HTML file which happens to have a set of special tags available to you that do a lot of interesting things.

If you tried this example and it did not output anything, it prompted for download, or you see the whole file as text, chances are that the server you are on does not have PHP enabled, or is not configured properly. Ask your administrator to enable it for you using the Installation chapter of the manual. If you are developing locally, also read the installation chapter to make sure everything is configured properly. Make sure that you access the file via http with the server providing you the output. If you just call up the file from your file system, then it will not be parsed by PHP. If the problems persist anyway, do not hesitate to use one of the many » PHP support options.

The point of the example is to show the special PHP tag format. In this example we used . You may jump in and out of PHP mode in an HTML file like this anywhere you want. For more details, read the manual section on the basic PHP syntax.

Note: A Note on Line Feeds

Line feeds have little meaning in HTML, however it is still a good idea to make your HTML look nice and clean by putting line feeds in. A linefeed that follows immediately after a closing ?> will be removed by PHP. This can be extremely useful when you are putting in many blocks of PHP or include files containing PHP that aren’t supposed to output anything. At the same time it can be a bit confusing. You can put a space after the closing ?> to force a space and a line feed to be output, or you can put an explicit line feed in the last echo/print from within your PHP block.

Note: A Note on Text Editors

There are many text editors and Integrated Development Environments (IDEs) that you can use to create, edit and manage PHP files. A partial list of these tools is maintained at » PHP Editors List. If you wish to recommend an editor, please visit the above page and ask the page maintainer to add the editor to the list. Having an editor with syntax highlighting can be helpful.

Note: A Note on Word Processors

Word processors such as StarOffice Writer, Microsoft Word and Abiword are not optimal for editing PHP files. If you wish to use one for this test script, you must ensure that you save the file as plain text or PHP will not be able to read and execute the script.

Now that you have successfully created a working PHP script, it is time to create the most famous PHP script! Make a call to the phpinfo() function and you will see a lot of useful information about your system and setup such as available predefined variables, loaded PHP modules, and configuration settings. Take some time and review this important information.

Example #2 Get system information from PHP

Источник

Создание страниц PHP – печатаем сайт налету!

От автора: вы когда-нибудь наблюдали за работой талантливых писателей? У меня есть один знакомый из «таких». Свои произведения он печатает на машинке: считает, что компьютер не способен принять всю «полноту его мыслей». А я ему в ответ говорю, что он так же, как и любая программа, всего лишь умело манипулирует строковыми значениями переменных. В общем, каждый остался при своем мнении. Сегодня мы рассмотрим создание страниц PHP, чтобы доказать, что этот язык программирования обладает огромным талантом.

Динамический талант

На проявление таланта любого автора (знаю по себе) могут влиять множество «сопутствующих» факторов: собственное настроение, погода и другие «ненастья». Но PHP «наплевать» на погоду за окном или ворчание жены за поломанный кран :). Он выполняет заложенный в него код. Причем делает это не просто так, а динамично: формируя (собирая) страницы налету.
Сегодня я постараюсь на несложны примерах продемонстрировать часто применяемые методы реализации динамичности на основе PHP:

Использование одного шаблона для создания нескольких веб-страниц.

Интеграция кода PHP в HTML.

Онлайн курс «PHP-разработчик»

Изучите курс и создайте полноценный проект — облачное хранилище файлов

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

Начнем рассмотрение динамического создания страниц на PHP c последнего пункта. Поскольку для изучения первых двух требуется знание третьего. Стартуем!

Разметка основного примера

Сейчас за пару минут «набросаю» разметку самой простой страницы на HTML без особых «изысков».

Источник

Читайте также:  Что такое java dir
Оцените статью