Содержание
- 1 Содержание
- 2 Как открыть файлы PHP
- 3 Какой способ лучше выбрать
- 4 Создание CSV файла в PHP
- 5 Два способа открыть PHP документ
- 6 Нелинейная обработка файла: перемещение по файлу
- 7 Зачем разделять и подключать php-сценарии
- 8 Типы файлов PHP
- 9 Вариант 2 — Проверка информации о PHP с помощью создания файла phpinfo.php
- 10 Создание таблицы результатов
Содержание
- basename — Возвращает последний компонент имени из указанного пути
- chgrp — Изменяет группу файла
- chmod — Изменяет режим доступа к файлу
- chown — Изменяет владельца файла
- clearstatcache — Очищает кеш состояния файлов
- copy — Копирует файл
- delete — См. описание функции unlink или unset
- dirname — Возвращает имя родительского каталога из указанного пути
- disk_free_space — Возвращает размер доступного пространства в каталоге или файловой системе
- disk_total_space — Возвращает общий размер файловой системы или раздела диска
- diskfreespace — Псевдоним disk_free_space
- fclose — Закрывает открытый дескриптор файла
- feof — Проверяет, достигнут ли конец файла
- fflush — Сбрасывает буфер вывода в файл
- fgetc — Считывает символ из файла
- fgetcsv — Читает строку из файла и производит разбор данных CSV
- fgets — Читает строку из файла
- fgetss — Читает строку из файла и удаляет HTML-теги
- file_exists — Проверяет существование указанного файла или каталога
- file_get_contents — Читает содержимое файла в строку
- file_put_contents — Пишет данные в файл
- file — Читает содержимое файла и помещает его в массив
- fileatime — Возвращает время последнего доступа к файлу
- filectime — Возвращает время изменения индексного дескриптора файла
- filegroup — Получает идентификатор группы файла
- fileinode — Возвращает индексный дескриптор файла
- filemtime — Возвращает время последнего изменения файла
- fileowner — Возвращает идентификатор владельца файла
- fileperms — Возвращает информацию о правах на файл
- filesize — Возвращает размер файла
- filetype — Возвращает тип файла
- flock — Портируемая консультативная блокировка файлов
- fnmatch — Проверяет совпадение имени файла с шаблоном
- fopen — Открывает файл или URL
- fpassthru — Выводит все оставшиеся данные из файлового указателя
- fputcsv — Форматирует строку в виде CSV и записывает её в файловый указатель
- fputs — Псевдоним fwrite
- fread — Бинарно-безопасное чтение файла
- fscanf — Обрабатывает данные из файла в соответствии с форматом
- fseek — Устанавливает смещение в файловом указателе
- fstat — Получает информацию о файле, используя открытый файловый указатель
- ftell — Возвращает текущую позицию указателя чтения/записи файла
- ftruncate — Урезает файл до указанной длины
- fwrite — Бинарно-безопасная запись в файл
- glob — Находит файловые пути, совпадающие с шаблоном
- is_dir — Определяет, является ли имя файла директорией
- is_executable — Определяет, является ли файл исполняемым
- is_file — Определяет, является ли файл обычным файлом
- is_link — Определяет, является ли файл символической ссылкой
- is_readable — Определяет существование файла и доступен ли он для чтения
- is_uploaded_file — Определяет, был ли файл загружен при помощи HTTP POST
- is_writable — Определяет, доступен ли файл для записи
- is_writeable — Псевдоним is_writable
- lchgrp — Изменяет группу, которой принадлежит символическая ссылка
- lchown — Изменяет владельца символической ссылки
- link — Создаёт жёсткую ссылку
- linkinfo — Возвращает информацию о ссылке
- lstat — Возвращает информацию о файле или символической ссылке
- mkdir — Создаёт директорию
- move_uploaded_file — Перемещает загруженный файл в новое место
- parse_ini_file — Обрабатывает конфигурационный файл
- parse_ini_string — Разбирает строку конфигурации
- pathinfo — Возвращает информацию о пути к файлу
- pclose — Закрывает файловый указатель процесса
- popen — Открывает файловый указатель процесса
- readfile — Выводит файл
- readlink — Возвращает файл, на который указывает символическая ссылка
- realpath_cache_get — Получает записи из кеша realpath
- realpath_cache_size — Получает размер кеша realpath
- realpath — Возвращает канонизированный абсолютный путь к файлу
- rename — Переименовывает файл или директорию
- rewind — Сбрасывает курсор файлового указателя
- rmdir — Удаляет директорию
- set_file_buffer — Псевдоним stream_set_write_buffer
- stat — Возвращает информацию о файле
- symlink — Создаёт символическую ссылку
- tempnam — Создаёт файл с уникальным именем
- tmpfile — Создаёт временный файл
- touch — Устанавливает время доступа и модификации файла
- umask — Изменяет текущую umask
- unlink — Удаляет файл
Как открыть файлы PHP
Файлы PHP – это просто текстовые документы, поэтому вы можете открыть их в любом текстовом редакторе или веб-браузере. Блокнот в Windows – один из примеров, но подсветка синтаксиса настолько полезна при кодировании на PHP, что обычно предпочитают более специализированные редакторы PHP.
Некоторые текстовые редакторы включают подсветку синтаксиса. Вот некоторые популярные редакторы PHP: Adobe Dreamweaver, Eclipse PHP Development Tools, Zend Studio, phpDesigner, EditPlus и WeBuilder.
Однако, хотя эти программы позволяют вам редактировать или изменять файлы PHP, они не позволяют вам фактически запускать сервер PHP. Для этого вам нужно что-то вроде веб-сервера Apache.
Некоторые файлы .PHP могут быть медиа-файлами или изображениями, которым случайно было присвоено расширение .PHP. В этих случаях просто переименуйте расширение файла на правильное, и тогда он будет правильно открываться в программе, которая отображает этот тип файла, например, в видеоплеере, если вы работаете с файлом MP4.
Какой способ лучше выбрать
Мы рассмотрели все четыре возможных варианта, как подключить PHP-файл с целью расширения программы. Оптимальные среди них — конструкции с суффиксом _once.
Без _once происходит постоянное переопределение переменных. Оно может привести к алгоритмическим ошибкам. Еще возможна ошибка при вызове функции, которая находится в дважды подключенном файле
Поэтому наш выбор — include_once и require_once в зависимости от важности файлов для работы программы. Инструкции с суффиксами помогают избежать ошибок, связанных с повторным подключением.
Лайфхак от перфекциониста
Чтобы отличать основные файлы от подключаемых, вторые можно переименовать. К примеру, мы пишем сайт на PHP. Добавим .inc к основным файлам header.php, footer.php и другим. Получим названия вида header.inc.php, footer.inc.php и тому подобные. За счет этого в папке вы сразу поймете, какие скрипты основные, а какие — второстепенные.
Добавлять .inc нужно исключительно для визуального оформления: никакой функциональной нагрузки прием не несет. Но удобство и структура важны в программировании, поэтому старайтесь все делать в едином стиле.
Если вы начинающий PHP-программист, рекомендуем пройти курс «PHP-разработчик». Вы изучите его от азов до нюансов и станете настоящим гуру в профессии.
Курс «PHP-разработчик» Обширная программа для изучения PHP, состоящая из4 курсов. Поможет с нуля овладеть популярным языком программирования, устроиться в IT-компанию вашей мечты или стать независимым разработчиком.
- Живая обратная связь с преподавателями
- Неограниченный доступ к материалам курса
- Стажировка в компаниях-партнёрах
- Дипломный проект от реального заказчика
- Гарантия трудоустройства в компании-партнёры для выпускников, защитивших дипломные работы
Создание CSV файла в PHP
Для создания CSV файла, достаточно создать текстовый файл, используя в нужных местах необходимые разделители столбцов и строк.
Важным моментом, является кодировка файла. Для корректного отображения кириллицы следует использовать кодировку cp1251 (windows-1251).
Разделитель колонок
Для русского языка символом-разделителем является ; (точка с запятой). Для англ. , (запятая).
Строки содержащие спец символы: » , ; \r\n или \n или \r должны быть в двойных кавычках «строка».
Двойные кавычки внутри строки, нужно «очистить» поставив перед кавычкой еще одну такую же кавычку: строка «csv» превратиться в «строка «»csv»»». Обрамление в кавычки нужно, чтобы можно было внутри значений колонок использовать разделители ;, , и не переживать что что-то сломается при чтении файла.
Разделитель строк
Для разделения строк в csv файлах можно использовать \r\n (возврат каретки и перенос строки, CR LF). В этом случае, если нужен перенос строки внутри значения колонки, то там используется просто \n.
Также, для разделения строки, может использоваться просто \n (перенос строки, LF). В этом случае, перенос строки внутри значения колонки должен обозначаться как \r (возврат каретки CR).
Функция для создания CSV файла
## Создает CSV файл из переданных в массиве данных. ## @param array $create_data Массив данных из которых нужно созать CSV файл. ## @param string $file Путь до файла 'path/to/test.csv'. Если не указать, то просто вернет результат. ## @return string/false CSV строку или false, если не удалось создать файл. ## ver 2 function kama_create_csv_file( $create_data, $file = null, $col_delimiter = ';', $row_delimiter = "\r\n" ){ if( ! is_array($create_data) ) return false; if( $file && ! is_dir( dirname($file) ) ) return false; // строка, которая будет записана в csv файл $CSV_str = ''; // перебираем все данные foreach( $create_data as $row ){ $cols = array(); foreach( $row as $col_val ){ // строки должны быть в кавычках "" // кавычки " внутри строк нужно предварить такой же кавычкой " if( $col_val && preg_match('//', $col_val) ){ // поправим перенос строки if( $row_delimiter === "\r\n" ){ $col_val = str_replace( "\r\n", '\n', $col_val ); $col_val = str_replace( "\r", '', $col_val ); } elseif( $row_delimiter === "\n" ){ $col_val = str_replace( "\n", '\r', $col_val ); $col_val = str_replace( "\r\r", '\r', $col_val ); } $col_val = str_replace( '"', '""', $col_val ); // предваряем " $col_val = '"'. $col_val .'"'; // обрамляем в " } $cols[] = $col_val; // добавляем колонку в данные } $CSV_str .= implode( $col_delimiter, $cols ) . $row_delimiter; // добавляем строку в данные } $CSV_str = rtrim( $CSV_str, $row_delimiter ); // задаем кодировку windows-1251 для строки if( $file ){ $CSV_str = iconv( "UTF-8", "cp1251", $CSV_str ); // создаем csv файл и записываем в него строку $done = file_put_contents( $file, $CSV_str ); return $done ? $CSV_str : false; } return $CSV_str; }
Использование:
$create_data = array( array( 'Заголовок 1', 'Заголовок 2', 'Заголовок 3', ), array( 'строка 2 "столбец 1"', '4799,01', 'строка 2 "столбец 3"', ), array( '"Ёлочки"', 4900.01, 'красный, зелёный', ) ); echo kama_create_csv_file( $create_data, THEME_PATH .'csv_file.csv' ); /* Получим Заголовок 1;Заголовок 2;Заголовок 3 "строка 2 ""столбец 1""";"4799,00";"строка 2 ""столбец 3""" """Ёлочки""";4900.01;"красный, зелёный" */
Два способа открыть PHP документ
Попробуем открыть файл с расширением .php в первом случае (файл с кодом). Запустить или просмотреть результат выполнения файла без сервера невозможно. Но и это не является большой проблемой. Установить сервер вызовет затруднений даже у начинающих программистов. Инструкция:
- Устанавливаем на ПК пакет Денвер – локальный сервер и другие инструменты для удобной работы со скриптами на языке PHP в режиме офлайн, вообще без активного доступа к интернету. Его можно скачать c официального сборки.
- Затем берем наш файл, назовем его filename.php, и помещаем в папку веб-сервера.
- Открываем любой браузер и в строке вводим путь до файла.
- Наблюдаем результат выполнения кода.
Подробнее о втором и третьем пункте инструкции. Следуем в каталог “C:\WebServers\home”, здесь по-умолчанию расположена папка под названием “test”. Теперь по вашему усмотрению: можете выбрать эту папку, можете создать свою здесь же (например, 123). Переходим в папку и создаем еще одну под названием «www». Теперь уже в нее помещаем наш файл “filename.php”. Полный путь до файла будет следующим: “C:\WebServers\home\123(или test)\www\filename.php”.
Запускаем Денвер при помощи кнопки Run. Должна появиться надпись в черном окне командной строки о том, что хост 123 (test) добавлен. Если в версии локального сервера нет иконок, то ищем их в “C:\WebServers\denwer\utils\”.
Далее переходим в браузер и в строку вбиваем следующую информацию: “http://123(test)/filename.php”. И выполняется четвертый пункт инструкции, все готово.
Если вы не связаны с разработками программ и файл с расширением .php появился у вас после закачивания видеозаписей, музыки, то смело пробуем открыть его в Блокноте. Возможно, вам будет выдана ошибка. В таком случае отключаем менеджер загрузок и пробуем снова. В других случаях с большой вероятностью в браузере откроется сохраненная страница сайта, с которого вы начинали скачивать фильм/музыку и т.д. Т.е. вместо непосредственно загрузки контента вы сохранили на жесткий диск саму страницу.
Нелинейная обработка файла: перемещение по файлу
Конечно, описанные выше функции позволяют вам выполнять чтение из файла лишь последовательно. Более сложные файлы могут потребовать перемещения к разным частям файла в его начале или конце. Для этого вам потребуется функция .
fseek($fh, 0);
В приведенном выше примере осуществляется переход назад, к началу файла. Если вы не хотите перемещаться в самое начало файла — скажем, одного килобайта вполне достаточно — вы просто пишете:
fseek($fh, 1024);
Начиная с PHP V4.0, доступны также несколько других опций. Например, если нужно перейти вперед на 100 байт от вашей текущей позиции, вы можете использовать следующий код:
fseek($fh, 100, SEEK_CUR);
Аналогично, переход назад на 100 байт осуществляется посредством:
fseek($fh, -100, SEEK_CUR);
Если вы хотите перейти назад в положение 100 байт до конца файла, используйте вместо этого .
fseek($fh, -100, SEEK_END);
После достижения нового положения вы можете воспользоваться , или другой функцией для чтения данных.
Примечание: вы не можете использовать в дескрипторах файла, ссылающихся на URL.
Зачем разделять и подключать php-сценарии
PHP-разработчики дробят весь исходный код проекта на отдельные сценарии, чтобы с ними проще было работать. Если бы пришлось писать весь код в одном файле, то такой сценарий стал бы просто необъятным и ориентироваться там стало решительно невозможно. Поэтому разделение кода на разные сценарии — это естественный способ бороться со сложностью. Есть и ещё один положительный эффект от подобного деления. Если вынести повторяющиеся блоки кода в отдельные сценарии, то появится возможность повторно использовать один код в разных файлах и подключать его только по требованию. Хороший пример — это пользовательские функции. Очень удобно объявлять их в отдельном сценарии, а затем подключать там, где эти функции понадобятся.
Типы файлов PHP
Ассоциация основного файла PHP
.PHP
Формат файла: | .php |
Тип файла: | PHP Source Code File |
PHP расширение файла используется один из наиболее распространенных языков программирования для веб-разработки, в PHP. Файл PHP является в основном веб-страница, которая содержит PHP код и содержит такие функции, как обработка формы онлайн или доступа к информации из базы данных.
Создатель: | Panic |
Категория файла: | Веб-файлф |
Ключ реестра: | HKEY_CLASSES_ROOT\.php |
Программные обеспечения, открывающие PHP Source Code File:
Microsoft Notepad, разработчик — Microsoft Corporation
Совместимый с:
Windows |
Mac |
Linux |
Notepad++, разработчик — Don Ho
Совместимый с:
Windows |
Mac |
Linux |
MacroMates TextMate, разработчик — MacroMates
Совместимый с:
Mac |
Vim, разработчик — Bram Moolenaar
Совместимый с:
Windows |
Mac |
Linux |
Unix |
OS X El Capitan |
Adobe Dreamweaver, разработчик — Adobe Systems Incorporated
Совместимый с:
Windows |
Mac |
Coda, разработчик — Panic
Совместимый с:
Mac |
WebsitePainter, разработчик — Ambiera
Совместимый с:
Windows |
Mac |
GNU Emacs, разработчик — GNU Project
Совместимый с:
Windows |
Mac |
Linux | |
GNU |
Apple TextEdit, разработчик — Apple
Совместимый с:
Mac |
ES-Computing Edit Plus, разработчик — ES-Computing
Совместимый с:
Windows |
Sublime Text, разработчик — Sublime HQ Pty Ltd
Совместимый с:
Windows |
Mac |
Linux |
Eclipse CDT, разработчик — The Eclipse Foundation
Совместимый с:
Windows |
Mac |
Linux |
jEdit, разработчик — Open Source
Совместимый с:
Windows |
Mac |
Linux |
NetBeans, разработчик — Open Source
Совместимый с:
Windows |
Mac |
Linux |
Solaris |
Atom, разработчик — GitHub, Inc.
Совместимый с:
Windows |
Mac |
Linux |
Notepad2, разработчик — Open Source
Совместимый с:
Windows |
Geany, разработчик — Geany Authors
Совместимый с:
Windows |
Mac |
Linux |
Solaris |
FreeBSD | |
NetBSD | |
OpenBSD |
ConTEXT, разработчик — ConTEXT Project
Совместимый с:
Windows |
Brackets, разработчик — Adobe Systems Incorporated
Совместимый с:
Windows |
Mac |
Linux |
Kate, разработчик — KDE
Совместимый с:
Windows |
Mac |
Linux |
Zend Studio, разработчик — Rogue Wave
Совместимый с:
Windows |
Mac |
Linux |
PhpStorm, разработчик — JetBrains
Совместимый с:
Windows |
Mac |
Linux |
Zend Server, разработчик — Rogue Wave
Совместимый с:
Windows |
Linux |
PowerPC |
OS X El Capitan |
WeBuilder, разработчик — Blumentals Software
Совместимый с:
Windows |
PhPEdit, разработчик — WaterProof
Совместимый с:
Windows |
HyperEdit, разработчик — Tumult
Совместимый с:
Mac |
EasyPHP Devserver & Webserver, разработчик — Open Source
Совместимый с:
Windows |
Visual Studio Code, разработчик — Microsoft Corporation
Совместимый с:
Windows |
Mac |
Linux |
WampServer, разработчик — Romain Bourdon
Совместимый с:
Windows |
MAMP, разработчик — Open Source
Совместимый с:
Mac |
Textastic Code Editor, разработчик — Alexander Blach
Совместимый с:
iOS |
EasyEclipse For PHP, разработчик — NexB
Совместимый с:
Windows |
Linux |
Bluefish, разработчик — SourceForge
Совместимый с:
Windows |
Linux | |
POSIX |
Solaris |
OS X El Capitan |
Editra, разработчик — Cody Precord
Совместимый с:
Windows |
Mac |
Linux |
WebMatrix, разработчик — Microsoft Corporation
Совместимый с:
Windows |
Programmer’s Notepad, разработчик — Echo Software (Simon Steele)
Совместимый с:
Windows |
RJ TextEd, разработчик — Rickard Johansson
Совместимый с:
Windows |
SciTE, разработчик — Neil Hodgson
Совместимый с:
Windows |
Mac |
Linux |
Ассоциации других файлов PHP
.PHP
Формат файла: | .php |
Тип файла: | Callisto PhotoParade Slideshow |
Расширение PHP Файл также связан с PhotoParade, программа фото слайд-шоу с помощью Каллисто, которая в настоящее время прекращено.
Создатель: | Callisto Corporation |
Категория файла: | Файлы растровых изображений |
Программы, открывающие файлы Callisto PhotoParade Slideshow :
PhotoParade, разработчик — Callisto Corporation
Совместимый с:
Windows |
.PHP
Формат файла: | .php |
Тип файла: | CreataCard Quick Prints Project |
PHP расширение файла используется CreataCard, программное обеспечение, сделанное AmericanGreetings.com для создания и редактирования открытки. PHP файлы этого типа для занесения сохранены быстрые проекты печати.
Создатель: | American Greetings |
Категория файла: | Файлы данных |
Программы, открывающие файлы CreataCard Quick Prints Project :
CreataCard, разработчик — American Greetings
Совместимый с:
Windows |
iOS |
Android |
.PHP
Формат файла: | .php |
Тип файла: | Microsoft Picture It! Publishing Project |
PHP файл, связанный с Microsoft Picture It! содержит сохраненную издательский проект, созданный программой.
Создатель: | Microsoft Corporation |
Категория файла: | Графические файлы |
Программы, открывающие файлы Microsoft Picture It! Publishing Project :
Microsoft Picture It!, разработчик — Microsoft Corporation
Совместимый с:
Windows |
Вариант 2 — Проверка информации о PHP с помощью создания файла phpinfo.php
Не волнуйтесь, если ваша хостинговая платформа не поддерживает функцию показанную в Варианте 1. Того же результата можно достичь создав специальный файл внутри вашего хостинг аккаунта. Файл также покажет всю информацию о вашем PHP и будет доступен через браузер.
Шаг 2.1 — Создание файла phpinfo
Существует несколько путей для создания файла phpinfo. В этом руководстве мы будем использовать для этого Файловый менеджер. Однако тот же результат может быть достигнут созданием файла на вашем локальном компьютере и дальнейшей загрузке файла на сервер через FTP-клиент.
Войдите в панель управления вашего хостинга и откройте Файловый менеджер. Нажмите кнопку Новый файл для создания нового файла.
В первом поле укажите путь где будет создан новый файл. Далее, в поле Новое имя файла введите phpinfo.php. В большинстве случаев вы можете оставить путь без изменений /public_html. В этом случае файл будет создан в корневом каталоге вашего сайта.
Шаг 2.2 — Редактирование файла
На этом этапе у вас уже имеется пустой файл phpinfo.php в каталоге public_html. Скопируйте следующий код в файл и нажмите иконку Сохранить в левом углу экрана.
<?php phpinfo(); ?>
Вот и все, вы успешно создали PHP файл, который отобразит все параметры вашего PHP. Как уже упоминалось ранее, тот же результат может быть достигнут с помощью FTP-клиента:
- Используйте любой текстовый редактор и создайте файл phpinfo.php на вашем компьютере.
- Добавьте следующий код в файл:
<?php phpinfo(); ?>
- Загрузите файл используя FTP в ваш каталог public_html.
Шаг 2.3 — Проверка информации о PHP через браузер
Если все было сделано правильно, то теперь вы можете получить доступ к созданному файлу, добавив в конец вашего доменного имени /phpinfo.php. К примеру, http://вашдомен.ru/phpinfo.php
Вы должны увидеть похожий результат при открытии этой страницы через браузер:
На этой странице вы сможете увидеть все настройки вашего PHP.
Создание таблицы результатов
В PDF-файлах нет такой простой табличной структуры, как в HTML. Для построения таблицы необходимо создать набор ячеек, имеющих различную ширину, шрифт, цвет фона, цвет линий и т.д.
В приведен дополнительный код, настраивающий строку заголовка для таблицы.
Листинг 6. Добавление заголовка таблицы результатов
<?php define('FPDF_FONTPATH','/Library/WebServer/Documents/derby/font/'); require( 'fpdf.php' ); require( 'getresults.php' ); class PDF extends FPDF { function EventTable($event) { $this->SetFont('','B','24'); $this->Cell(40,10,$event,15); $this->Ln(); $this->SetXY( 10, 45 ); $this->SetFont('','B','10'); $this->SetFillColor(128,128,128); $this->SetTextColor(255); $this->SetDrawColor(92,92,92); $this->SetLineWidth(.3); $this->Cell(70,7,"Team 1",1,0,'C',true); $this->Cell(20,7,"Score 1",1,0,'C',true); $this->Cell(70,7,"Team 2",1,0,'C',true); $this->Cell(20,7,"Score 2",1,0,'C',true); $this->Ln(); } } $pdf = new PDF(); $pdf->SetFont('Arial','',10); foreach( getResults() as $event ) { $pdf->AddPage(); $pdf->EventTable($event); } $pdf->Output(); ?>
Этот дополнительный код настраивает шрифт, цвета и толщину линий. Затем он визуализирует несколько ячеек, содержащих заголовки четырех столбцов. Далее вызывается метод , выполняющий возврат каретки для перехода на новую строку.
Результат выполнения данного сценария в браузере показан на .
Рисунок 4. Страница со строкой заголовков столбцов таблицы
На заголовки отображаются в виде белого текста на сером фоне. Такой формат выделит их из данных, которые будут отображаться под заголовками. Для визуализации результатов соревнований добавьте код, приведенный в .
Листинг 7. Добавление заполненной таблицы результатов
<?php define('FPDF_FONTPATH','/Library/WebServer/Documents/derby/font/'); require( 'fpdf.php' ); require( 'getresults.php' ); class PDF extends FPDF { function EventTable($event) { $this->SetFont('','B','24'); $this->Cell(40,10,$event,15); $this->Ln(); $this->SetFont('','B','10'); $this->SetFillColor(128,128,128); $this->SetTextColor(255); $this->SetDrawColor(92,92,92); $this->SetLineWidth(.3); $this->Cell(70,7,"Team 1",1,0,'C',true); $this->Cell(20,7,"Score 1",1,0,'C',true); $this->Cell(70,7,"Team 2",1,0,'C',true); $this->Cell(20,7,"Score 2",1,0,'C',true); $this->Ln(); $this->SetFillColor(224,235,255); $this->SetTextColor(0); $this->SetFont(''); $fill = false; foreach($event as $game) { $this->SetFont('Times',((int)$game>(int)$game)?'BI':''); $this->Cell(70,6,$game,'LR',0,'L',$fill); $this->Cell(20,6,$game,'LR',0,'R',$fill); $this->SetFont('Times',((int)$game<(int)$game)?'BI':''); $this->Cell(70,6,$game,'LR',0,'L',$fill); $this->Cell(20,6,$game,'LR',0,'R',$fill); $this->Ln(); $fill =! $fill; } $this->Cell(180,0,'','T'); } } $pdf = new PDF(); $pdf->SetFont('Arial','',10); foreach( getResults() as $event ) { $pdf->AddPage(); $pdf->EventTable($event); } $pdf->Output(); ?>
В дополнение к выводу строки заголовков у нас есть цикл в методе , который выполняет итерирование по всем матчам. На показан код реализации.
Рисунок 5. PDF с таблицей результатов
Переменная чередует цвета фона строк таблицы. Названия и результаты выигравших команд отображаются жирным курсивом. Также отмечу, что шрифт меняется с Arial для заголовков на Times для содержимого матчей.
Чтобы завершить код примера, нужно добавить немного графики.
С этим читают
- Таблицы
- Csv
- Открываем pdf-файлы онлайн
- Readme.txt — onarım sorunları ve indirme
- Качество и размер изображения
- Чем открываются файлы расширения .aspx
- Как конвертировать Doc в Pdf
- Release notes for windows subsystem for linux
- Глобальные переменные в wordpress
- Статический анализ php-кода на примере phpstan, phan и psalm