Контакты

Язык php для начинающих. Простые примеры php. Используйте систему кэширования

1. Подружитесь со справочником по PHP

Если вы новичок в PHP, значит, пришло время познакомиться с внушающим почтение справочником PHP. Справочник по PHP невероятно исчерпывающий и содержит действительно полезные комментарии к каждой статье. Перед тем, как задавать вопросы или пытаться самостоятельно разрешить проблему, сэкономьте время и просто возьмите курс на справочник. Ответы на ваши вопросы уже удобно разместились в полезной статье на сайте PHP.net.
В данном случае мы Вам рекомендуем поискать самостоятельно справочники на русском языке, лучше php для начинающих. Будем рады, если Вы дадите ссылке на полезные справочники в комментариях к статье (Просто учитывайте, что это перевод статьи).

Введите апостроф: каждая строка является выбором, апостроф охватывает каждый выбор.

  • Перейти к концу строки.
  • Введите запятую, затем выберите конец строки и введите пробел для их замены.
Это зависит от вас, чтобы играть с различными возможностями и определить, что вам кажется наиболее удобным в зависимости от ситуации и манипуляций, которые необходимо выполнить.

Основным принципом является макет.

  • Единый вид.
  • Макет горизонтальный с 2, 3 и 4 колонками.
  • Макет вертикальный с 2 ​​или 3 линиями.
  • Макетная сетка в 2 × 2.
Каждая панель макета называется фокус-группой, поэтому вы можете размещать вкладки в выбранной вами фокус-группе, перетаскивая ее или отбрасывая, или активируя вкладку и используя ярлык, который идет хорошо. Вы также можете изменить активную группу фокусировки на клавиатуре. Когда количество фокус-групп уменьшается, вкладки, присутствующие в очищаемых группах, агрегируются для остальных групп.

2. Включите отчет об ошибках

Подсветка синтаксиса

Code completion (подсказки идентификаторов в редакторе кода)

Предупреждения об ошибках

Рефакторинг кода (переделка кода)

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

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

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

4. Попробуйте PHP-frameworks

Вы можете многое узнать о PHP, просто экспериментируя с PHP-фреймворками. Такие фреймворки, как CakePHP или CodeIgniter , позволяют быстро создавать приложения PHP, даже если вы в нем не эксперт. В каком-то смысле они – дополнительные подпорки, которые показывают вам, каким образом должно выглядеть приложение PHP, и демонстрируют полезные концепции программирования (вроде отделения логики от дизайна и т.д.).

Автоматические настройки, основанные на содержимом файла

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

  • Тип используемого символа: вкладка или пробелы.
  • Автоматический отступ Мы рассмотрим его через мгновение.
Эти настройки определяются по умолчанию для каждого синтаксиса. Когда вы меняете их в интерактивном режиме по нижнему праву строки состояния, эти настройки останутся для текущего синтаксиса, если вы не находитесь в автоматическом обнаружении, как было замечено ранее, и вы можете изменить их с помощью настроек синтаксиса.

Возражение: лично я не советую новичкам пользоваться фреймворками. Сначала выучите основы.

5. Научитесь DRY

6. Делайте отступы и используйте пробелы в коде для читаемости

Если вы не используете отступы и пробелы в коде, то результат выглядит, как картина Джексона Поллака (Jackson Pollack). Обеспечьте читаемость своего кода и нормальный поиск, потому что почти наверняка в будущем вы будете делать в нем изменения. IDE и современные текстовые редакторы могут автоматически делать отступы в коде.

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

Конец-конец и конец файла

Обнаруживает, что вы только что ввели блок, например, и сам увеличил уровень отступов. Эти настройки используются в трех настройках. Мы все выбрали гнилые отличия «Нет новой строки в конце файла» под предлогом того, что мы изменили конец файла, что у него была пустая строка до и сейчас, или наоборот.

Управление пакетами и рекомендуемые пакеты

Теперь у вас есть доступ к установке и управлению пакетами с помощью управления пакетами, просто запустив палитру команд и набрав «Пакет». Команды отображают ход в строке состояния слева.

7. Делайте код многоуровневым

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

8. Всегда используйте

Часто программисты пытаются использовать сокращения в операторах PHP. Вот как это обычно делается:

Мои дорогие дополнительные пакеты

Позволяет создавать файл на клавиатуре из любого места, используя соответствующую комбинацию клавиш. В поле ввода, которое появляется в нижней части окна, вы можете ввести нужный путь, при этом доступность будет доступна. Если вы введете несуществующие имена папок, они будут созданы «на лету».

Не бойтесь просить помощи

Он преобразуется по например, следующий беспорядок. Этот пакет не известен управлению пакетами. Хорошее качество окраски и контрастности плюс триггеры табуляции для наиболее распространенных блоков. У нас также есть триггер табуляции, основанный на «лореме». Настройки позволяют определять размер вставленных фрагментов, а выделенные команды на размер также доступны в палитре команд.

<% echo "Hello world"; %>

Хотя это действительно экономит несколько символов, все эти методы являются устаревшими и неофициальными. Придерживайтесь стандартного , так как это гарантированно будет поддерживаться всеми будущими версиями.

9. Используйте содержательные, последовательные названия

Именование – не только для вашего собственного удовольствия. Нет ничего хуже, чем продираться сквозь бессмысленные условные обозначения другого программиста. Помогите самому себе и другим, используя для своих классов и свойств имена, имеющие смысл.

У нас есть часть синтаксической раскраски, и все. Даже чтение, которое контролирует интерактивную запись во многих оболочек, обеспечивает его. Что-то неудачное, однако, хорошо: этот пакет выходит за рамки простой транспозиции персонажей. Теоретически, если выбор активен, он меняет сторону выбора, где находится курсор.

Этот пакет автоматически выделяет несколько символов Юникода в буфере, таких как французские кавычки. Но бывают случаи, когда это происходит без моего желания. Редактор не сообщит об этом мне, и код останется в силе, так что линия клиента не будет установлена ​​на следующую строку, хотя, по-видимому, центральная линия гарантировала ему значение! На самом деле эта центральная линия дает значение переменной клиента. Он не только предоставляет варианты, которые хорошо адаптированы к моим потребностям, но прежде всего он вырезает код более тонко, чем большинство тем; он отличает больше вещей.

10. Комментируйте, комментируйте, комментируйте

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

Дополнительные ресурсы для просмотра абсолютно

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

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

11. Установите MAMP/WAMP

MySQL — самый популярный вид базы данных, используемый с PHP (хотя и не единственный). Если нужно настроить локальное окружение для разработки и тестирования ваших PHP-приложений на компьютере, предусмотрите установку MAMP (Mac) или WAMP (Windows). Установка MySQL на ваш собственный компьютер может стать утомительным процессом, а оба этих программных пакета содержат MySQL. Ловко и просто.

Пользовательские сеансы и корзина для покупок

Реализация корзины Управление заказанными количествами. Создание записей продукта «на лету» путем извлечения данных из базы данных. Конструктор массива Функции, связанные с массивами Функции извлечения. Поисковая система: форма по отношению к базе данных. Расширенные функции выбора: изменение базы данных, сортировка, поиск.

Реализация поисковой системы и представление результатов. Вам будет отправлен специальный учебный комплект, включая аппаратное обеспечение. Внимание к этому обучению все сеансы не реализуются на дистанции курса формулы. Для каждого из упражнений участникам раздаются поправки, позволяющие им «шаг за шагом» манипулировать. Теоретические части бывают быстрыми, они переходят к основному. История или слишком конкретные домены добровольно исключены.

12. Установите лимиты своим скриптам

Установка лимита времени на PHP-скрипты – очень ответственная вещь. Бывают моменты, когда скрипты выходят из строя, и когда это произойдет, вам придется использовать свойство set_time_limit (установить лимит времени), чтобы избежать бесконечно повторяющихся циклов и истечения таймаутов времени соединения с базой данных. Set_time_limit устанавливает лимит времени на максимальное количество секунд, за которое выполняется скрипт (по умолчанию 30). По истечении этого времени возбуждается неустранимая ошибка.

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

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

13. Используйте объекты (или ООП)

Объектно-ориентированное программирование (ООП) использует объекты, чтобы представлять компоненты приложения. ООП – это не только способ разбить свой код на отдельные логические секции, оно также снижает количество повторений кода и делает намного более легким его модифицирование в будущем.

Благодаря этому курсу для меня больше не проблема взаимодействовать с моими сайтами с реляционной базой данных или создавать приложения для управления пользователями или электронную почту и информационные бюллетени. Копирование - истинная сила курса, что упрощает работу даже самые сложные концепции. С учетом меня суждение однозначно положительно. - Джузеппе лига. Ну, во-первых, это онлайн-курс более 14 лет, поэтому у нас есть профессиональные форматы!

Концепции, даже самые сложные, легко обсуждаются, и все они сопровождаются практическими учебниками, которые в то же время объясняют объяснение. еще - Лука Замбетта. Капелли легко решает самые трудные проблемы и предлагает решения простые, с большой практичностью в любой точке мира.

14. Поймите разницу между одинарными и двойными кавычками

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

Капелли за то, что он дал мне возможность быстро учиться. - Соня Салерно. Узнайте, как исправить 99% общих проблем и создать свои собственные профессиональные приложения, такие как гостевая книга, форум, менеджер новостей, менеджер электронной почты и т.д. Не читая ни одной строки утомительных книг, руководств или компакт-дисков столько разговоров и мало практики.

Благодаря 82 мультимедийным видео, специально разработанным для вас, вы сможете приобрести все знания, необходимые для решения сложных и эффективных приложений, которые вы когда-либо планировали. Программа действительно хорошо сделана, и люди, которые следуют за вами, работают в режиме сонодинамики и, в свою очередь, всегда готовы помочь вам в любое время. Уроки ясны, очень глубокая тема, чтобы не оставлять никаких сомнений и неопределенности.

Возражение: Собственно, это не обязательно верно. Тесты Benchmark показывают, что при тестировании строк без переменных существуют определенные преимущества быстродействия при использовании двойных кавычек.

15. Не ставьте phpinfo() в свой Webroot

Phpinfo – чудесная вещь. Просто создав PHP-файл, в котором есть:

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

Но что вы узнаете, удобно сидя перед компьютером, просматривая видео?

Копелли и его команда за эту возможность. Вы создадите приложения для управления отправкой электронной почты с вашего сайта. Как их создать, как их использовать, как их получить. Вы сможете: создавать приложения, которые временно хранят данные, настраивая контент пользователя для эффективных маркетинговых действий. Знайте предпочтения посетителей вашего сайта и понимайте, как оптимизировать страницы для ранжирования в поисковых системах. Написать «отсортированные» и обновляемые программы без необходимости переписывать сотни и сотни строк кода и тем самым поддерживать простую и быструю сложную программу. Все основные инструкции для создания приложений, которые позволяют вам управлять большим объемом данных непосредственно с веб-страницы.

На ваш взгляд, что может стоить весь курс

Вы сможете: создавать сложные приложения в полтора раза. . Этот курс эквивалентен трехдневной аудитории.


16. Никогда, никогда не доверяйте своим пользователям

Если в приложении есть места для входа пользователей, вы всегда должны предполагать, что кто-то попробует ввести сомнительный код. (Мы не подразумеваем, что ваши пользователи — плохие люди. Это просто здравый смысл.) Отличный способ уберечь свой сайт от хакеров – всегда инициализировать свои переменные для защиты сайта от XSS-атак. На PHP.net есть пример должным образом закрытой формы с инициализированными переменными:

Считаете ли вы, что этот курс может стоить вам такой же гарантии качества? Нет, дело не только в том, что тем, кто выполняет эти курсы, приходится сталкиваться со многими арендами в классе и платить учителям справедливую цену! Следуйте 82 видеороликам, это будет похоже на то, что вы меня бок о бок для всего курса!

Зачем вам присоединиться и присоединиться?

Если вы зарегистрируетесь до пятницы, 08 сентября, вы все еще успеваете воспользоваться специальной рекламной скидкой. Чтобы подписаться на рекламную цену и узнать предложение подробно, нажмите ниже. Вы сможете повторно использовать весь код для своих личных приложений. . Вам больше не придется изучать сотни страниц в утомительных учебниках, вам не придется тратить часы и часы перед компьютером, пытаясь решить проблему, вам не придется «стесняться», пытаясь найти решение вашей проблемы в Интернете. это мы предоставляем вам, сидя удобно сидя или лежа перед компьютером, наблюдая 82 видео с объяснениями и примерами курса.

17. Храните пароли зашифрованными

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

Echo md5("myPassword"); // renders -

Возражение: Тем не менее, помните, что хэши MD5 уже давно скомпрометированы. Безусловно, они скорее безопасны, чем нет, но с помощью гигантской “спектральной таблицы” хакеры могут восстановить ваш хэш. Для обеспечения еще большей безопасности обдумайте возможность добавления «соли» (помех в виде «белого шума»). «Соль» – это обычно дополнительный набор символов, которые вы присоединяете к пользовательской строке.

18. Используйте инструменты визуализации баз данных

Если вам кажется сложным планировать и изменять базы данных для своих PHP-приложений, можно было бы рассмотреть возможность использования инструмента визуализации баз данных. Пользователи MySQL могут работать с DBDesigner и MySQL Workbench для визуального дизайна своих баз данных.


19. Используйте буферизацию вывода

Буферизация вывода – это простой способ очень сильно улучшить качество и скорость вашего PHP-скрипта. Без буферизации вывода ваш скрипт будет показывать HTML на странице так, как он обрабатывается – частями. Добавление буферизации вывода позволяет PHP хранить HTML как переменную и посылать его на браузер единой порцией.

Для активирования функции буферизации вывода просто добавьте ob_start() как здесь в начале файла.

Возражение: Хотя это и не требуется, обычно считается хорошей практикой просто взять и прикрепить функцию “ob_end_flush();” к концу документа. P.S. Хотите также сжать HTML? Просто смените “ob_start();”на “ob_start(‘ob_gzhandler’)”;

untitled

20. Оберегайте свой скрипт от атаки SQL-injection

Если вы не отделяете (escape) символы, использующиеся в строках SQL, ваш код уязвим для атаки SQL-injection. Избежать этого можно, используя либо функцию mysql_real_escape_string (прим. перев. для отделения символов), либо подготовленные операторы SQL (prepared statements).

Вот пример mysql_real_escape_string в действии:

$username = mysql_real_escape_string($GET["username"]);

И подготовленного оператора:

$id = $_GET["id"]; $statement = $connection->prepare("SELECT * FROM tbl_members WHERE id = ?"); $statement->bind_param("i", $id); $statement->execute();

21. Попробуйте ORM

Если вы пишете объектно-ориентированный PHP, то можете использовать OR-mapping (ORM). ORM позволяет вам преобразовывать данные между реляционными базами данных и языками объектно-ориентированного программирования. Короче говоря, ORM дает возможность работать с базами данных таким же образом, каким вы работаете с классами и объектами в PHP.

Для PHP есть множество ORM-библиотек, таких как Propel, а также ORM встроен в фреймворки PHP, такие, как CakePHP.

22. Кэшируйте страницы, управляемые базой данных

Кэширование PHP-страниц, управляемых базой данных – отличная идея для улучшения скорости загрузки и производительности своего скрипта. В действительности не так уж трудно создать и извлечь статические файлы содержимого при помощи нашего доброго друга ob_start(). Вот пример, взятый со Snipe.net:

// TOP of your script $cachefile = "cache/".basename($_SERVER["SCRIPT_URI"]); $cachetime = 120 * 60; // 2 hours // Serve from the cache if it is younger than $cachetime if (file_exists($cachefile) && (time() - $cachetime < filemtime($cachefile))) { include($cachefile); echo ""; exit; } ob_start(); // start the output buffer // Your normal PHP script and HTML content here // BOTTOM of your script $fp = fopen($cachefile, "w"); // open the cache file for writing fwrite($fp, ob_get_contents()); // save the contents of output buffer to the file fclose($fp); // close the file ob_end_flush(); // Send the output to the browser

Этот кусок кода использует кэшированную версию страницы, если с момента ее генерации прошло менее 2 часов.

23. Используйте систему кэширования

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


24. Проверяйте достоверность данных Cookie

Данные Cookie, как любые другие данные, передаваемые по Сети, могут быть вредоносными. Вы можете проверять данные cookie либо при помощи thehtmlspecialchars() , либо mysql_real_escape_string() .

25. Используйте системы кэширования статических файлов

Помимо использования систем кэширования баз данных вроде Memcached, вы также могли бы попробовать систему шаблонов, чтобы увеличить производительность своих PHP-приложениях. Smarty — надежная система шаблонов, имеющий встроенное кэширование.

26. Профилируйте свой код

Профилирование своего кода при помощи такого инструмента, как xdebug , может помочь вам быстро опознавать узкие места и прочие потенциальные проблемы в своем PHP-коде. Некоторые IDE типа Netbeans так же имеют возможность профилировать PHP.

27. Кодируйте согласно стандартам

Если уж вы скинули с себя путы изучения PHP, то можете начать учиться кодировать согласно стандарту. Между разными стандартами существуют отличия, поэтому обнаружить таковой и придерживаться его, в конце концов, будет способствовать логичности вашего кодирования.

28. Выполняйте функции вне циклов

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


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

29. Не копируйте добавочные переменные

Некоторые любят пробовать делать свой код более привлекательным с помощью копирования предопределенных переменных в промежуточные переменные. Это уже чересчур и потенциально может удвоить размер памяти вашего скрипта. На Google Code есть плохие и хорошие примеры использования переменной:

$description = strip_tags($_POST["description"]); echo $description;

Echo strip_tags($_POST["description"]);


Возражение: В ответ на комментарий об «удвоении размера памяти», это, в действительности, обычное неверное представление. PHP реализовывает управление памятью“copy-on-write”. По существу, это означает, что вы можете присвоить значение для такого количества переменных, какое захотите, не волнуясь о том, что данные будут реально копироваться. Бездоказательно, что вышеприведенный «хороший» пример может сделать код более понятным, и я очень сильно сомневаюсь, что он хоть немного быстрее.

30. Обновите PHP до самой последней версии

Хотя это кажется весьма здравой мыслью, многие не делают апгрейд PHP настолько часто, как следовало бы. Между PHP 4 и PHP 5 существует много улучшений. Следите за тем, чтобы на вашем сервере было обновленное программное обеспечение.

31. Сократите количество запросов к базе данных

Так или иначе, чем больше вы можете снизить количество запросов к базе данных, тем выше будет производительность вашего PHP-скрипта. Существуют такие инструменты, как Stace (Unix) и Process Explorer (Windows), которые дают вам возможность находить дублирующие процессы с тем, чтобы их можно было бы объединить.


32. Не бойтесь просить помощи

Только человеческой натуре свойственно желание скрыть тот факт, что мы не так много знаем на определенную тему. Никому не нравится быть придурком! Но как можно научиться, не задавая вопросов? Не стесняйтесь пользоваться форумами, IRC, StackOverflow , чтобы задавать вопросы бывалым PHP-разработчикам. На вебсайте PHP есть страница получения помощи по PHP .

Есть свои собственные возражения? Уверен, что есть! Давайте поспорим.

Перевод и редакция: Рог Виктор и Андрей Бернацкий. Команда webformyself.

Несомненно, php поднял развитие сайтов на новый уровень, я уже не могу себе представить свои проекты без php. Вспоминаю как раньше я делал сайты на html и ужасаюсь, хватало же терпения редактировать постоянно одни и те же элементы ради хоть какого-то изменения сайта.

Эта статья для тех, кто до сих пор делает сайты на html, тут я покажу несколько полезных и простых примеров на php, чтобы показать что вы теряете. Статья также будет хорошей шпаргалкой для тех, кто уже начал изучать программирование на php.

Я постараюсь преподнести вам эти примеры в порядке возрастания их сложности.

Какая версия php у меня установлена

Прежде чем работать с php было бы неплохо узнать установлин ли у вас php и узнать какая именно версия. Выполнять поставленную задачу будем с помощью встроенной функции phpinfo() , которая кроме версии php покажет нам детальный отчёт о всех его настройках.


echo date ("H:i:s d.m.Y" );
?>

Маленькая хитрость: обычно в конце страницы ставят копирайт так Copyright © сайт, 2007 - 2017. Обратите внимание на вторую дату, она выводится с помощью php и в этом случае не нужно каждый год вручную подправлять число.

Как определить IP-посетителя

При написании скрипта для добавления комментариев неплохо бы кроме вводимых пользователем данных писать в базу данных ещё и его IP-адрес, мало ли пригодится. Узнать IP адрес пользователя можно с помощью функции getenv("REMOTE_ADDR")


echo getenv ("REMOTE_ADDR" );
?>

Ваш IP: 144.76.94.14

Вычисляем время выполения php-скрипта (загрузки страницы)

При программировании на php немаловажно уделить внимание скорости загрузки срипта. Слишком долго выполняющиеся скрипты могут сильно грузить сервер, при высокой посещаемости ресурса будут происходить сбои всего сайта из-за таких скриптов. Чтобы узнать сколько времени работает скрипт (грузится страница), воспользуйтесь таким примером php-кода:


define ("ST_T" , microtime ()); //начало

Echo "

Контент страницы, скрипты и т.п.

" ;

Printf ("Страница сгенерирована за %.5f сек." , microtime ()- ST_T ); //конец
?>


echo rand (1 , 100 );
?>

В данном случае будет генерироваться случайное число от 1 до 100.

Список файлов из папки

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


$files_arr = scandir ("14" );
//выведем содержимое массива на экран
echo "

"
;
print_r ($files_arr );
echo "
" ;
?>

Вот вам пример работы этого скрипта:

Array ( => . => .. => date.html => file_get_contents.html => load.html => phpinfo.html => rand.html)

Это файлы из папки с примерами к этой статье.

Какой размер файла

Если нужно узнать размер файла, например картинки, то воспользуемся функцией filesize() , она покажет нам размер файла в байтах.


echo filesize ("image.jpg" ). " байт" ;
?>

Скачать файл скриптом

Если нужно зашифровать для каких-то целей исходную папку с файлами, но дать возможность пользователям скачивать из неё файлы, т.е. сделать нечто похожее на файлообменник, то можно воспользоваться следующим примером кода:


$filename = "file.zip" ; //файл для скачивания
$filefolder = "folder/" ; //секретная папка
$filesize = filesize ($filefolder . $filename );
header ("HTTP/1.1 200 OK" );
header ("Connection: close" );
header ("Content-Type: application/octet-stream" );
header ("Accept-Ranges: bytes" );
header ("Content-Disposition: attachment; filename=" . $filename );
header ("Content-Length: " . $filesize );
readfile ($filefolder . $filename );
?>

Если обратиться к файлу с таким скриптом, то начнётся скачивание файла file.zip из папки folder, но пользователь никогда не узнает из какой же папки происходит скачивание, а значит и не узнает его истиного пути, в нашем случае это http://сайт.ру/folder/file.zip

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

Транслитерация слов с помощью php

Наверное не нужно объяснять зачем нужно транслитерировать русские буквы, это и так понятно.

Пример работы скрипта можно посмотреть в моих сервисах.


function transliterate_text ($tt )
{
$tt = strtr ($tt , array("а" => "a" , "А" => "A" , "б" => "b" , "Б" => "B" ,
"в" => "v" , "В" => "V" , "г" => "g" , "Г" => "G" , "д" => "d" , "Д" => "D" ,
"е" => "e" , "Е" => "E" , "ё" => "e" , "Ё" => "E" , "ж" => "zh" , "Ж" => "ZH" ,
"з" => "z" , "З" => "Z" , "и" => "i" , "И" => "I" , "й" => "y" , "Й" => "Y" ,
"к" => "k" , "К" => "K" , "л" => "l" , "Л" => "L" , "м" => "m" , "М" => "M" ,
"н" => "n" , "Н" => "N" , "о" => "o" , "О" => "O" , "п" => "p" , "П" => "P" ,
"р" => "r" , "Р" => "R" , "с" => "s" , "С" => "S" , "т" => "t" , "Т" => "T" ,
"у" => "u" , "У" => "U" , "ф" => "f" , "Ф" => "F" , "х" => "h" , "Х" => "H" ,
"ц" => "ts" , "Ц" => "TS" , "ч" => "ch" , "Ч" => "CH" , "ш" => "sh" ,
"Ш" => "SH" , "щ" => "shch" , "Щ" => "SHCH" , "ъ" => "" , "Ъ" => "" , "ы" => "i" ,
"Ы" => "I" , "ь" => """," Ь "=>""" , "э" => "e" , "Э" => "E" , "ю" => "yu" ,
"Ю" => "YU" , "я" => "ya" , "Я" => "YA" ));
return $tt ;
}
$line = "Привет, мир!" ;
echo transliterate_text ($line );
?>

Код вы сможете без труда изменить на своё усмотрение.

Сканируем чужие сайты

Вот уж где находка вора, с помощью функции file_get_contents() вы можете открывать на своих страницах чужие сайты.


echo file_get_contents ("http://modelmen.ru/p2808" );
?>

Злоупотреблять этой функцией не нужно, иначе можно доиграться!

Адрес сайта

С помощью функции $_SERVER["HTTP_HOST"] можно сказать пользователю на каком сайте он находится или использовать для подставновки в своих скриптах.


echo "Вы находитесь на сайте " . $_SERVER [ "HTTP_HOST" ];
?>

Результат: Вы находитесь на сайте сайт

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

Понравилась статья? Поделитесь ей