Допустим в шаблоне сайта вручную указан текущий год и копирайт:
Читать далее «Как вывести текущий год в подвале сайта»Архивы рубрик:PHP
Установка Memcached
Приведу пример установки Memcached, который позволяет кэшировать данные в оперативной памяти.
Читать далее «Установка Memcached»Решение PHP Notice: Use of undefined constant x — assumed ‘x’
Заметил однажды при написании PHP скрипта следующее уведомление:
PHP Notice: Use of undefined constant uid - assumed 'uid' in /scripts/file.php on line 31 PHP Notice: Use of undefined constant value - assumed 'value' in /scripts/file.php on line 32
Читать далее «Решение PHP Notice: Use of undefined constant x — assumed ‘x’»
Скрипт отправки СМС через Goip4 шлюз для ABillS
Приведу пример PHP скрипта, которым я рассылаю СМС сообщения через GoIP4 шлюз.
Сначала выберем тарифы только с месячным начислением:
SELECT name, tp_id FROM tarif_plans;
SELECT name, tp_id FROM tarif_plans WHERE month_fee>0;
Собственно вот сам скрипт, я запускаю его из cron на отдельном сервере (где я установил GoIP4 СМС сервер):
Читать далее «Скрипт отправки СМС через Goip4 шлюз для ABillS»Повышение версии PHP в Ubuntu 14.04
Понадобилось однажды на Ubuntu Server 14.04 LTS повысить версию PHP 5.5.9 до 5.6, обычное обновление компонентов системы не помогло:
sudo apt-get update sudo apt-get upgrade
Можно попробовать обновить систему до 16.04 или выше как я описывал в статье Обновление Ubuntu 14.04 до 16.04. Вместе с системой будет обновлен и PHP.
Если же обновление системы не удается выполнить, то можно добавить сторонний источник с PHP:
sudo add-apt-repository ppa:ondrej/php sudo apt-get update
И установить из него нужную версию, например PHP 5.6:
sudo apt-get install php5.6 php5.6-mbstring php5.6-mcrypt php5.6-mysql php5.6-xml
Так как установленных версий может быть несколько, отключим старую и активируем установленную:
sudo a2dismod php5 sudo a2enmod php5.6 sudo service apache2 restart
Аналогично можно установить PHP 7.2:
sudo apt-get install php7.2 sudo a2dismod php5.6 sudo a2enmod php7.2 sudo service apache2 restart
Или PHP 7.0:
sudo apt-get install php7.0 sudo a2dismod php7.2 sudo a2enmod php7.0 sudo service apache2 restart
Решение PHP Warning «Permission denied /var/cpanel/php/sessions/ea-php56/»
Однажды обновил EasyApache3 на EasyApache4 в cPanel и заметил в логах PHP следующее:
[29-Mar-2018 15:54:45 UTC] PHP Warning: Unknown: open(/var/cpanel/php/sessions/ea-php56/sess_3d96o7nnlnnr473p8619vqkdm1, O_RDWR) failed: Permission denied (13) in Unknown on line 0 [29-Mar-2018 15:54:45 UTC] PHP Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/cpanel/php/sessions/ea-php56) in Unknown on line 0
Предупреждение возникает из-за того что PHP не может записать файлы сессий в директорию к которой у него нет прав доступа.
Посмотрел права этой директории, группой и владельцем был root, а также было разрешено запись и выполнение для всех, кроме чтения.
Чтобы устранить это предупреждение, можно открыть полный доступ для всех:
chmod 777 /var/cpanel/php/sessions/ea-php56
Либо открыть конфигурацию PHP, например в редакторе nano:
nano /opt/cpanel/ea-php56/root/etc/php.ini
Найти:
session.save_path = "/var/cpanel/php/sessions/ea-php56"
И изменить на:
session.save_path = "/tmp"
Что раньше и было на старом EasyApache3 в конфигурации PHP /usr/local/lib/php.ini.
После этого предупреждение не появлялось.
Смотрите также:
Миграция с EasyApache 3 на EasyApache 4
Скрипт отправки СМС через Goip4 шлюз
Приведу пример скрипта написанного на PHP, для отправки СМС сообщений через Goip4 шлюз.
Скрипт получает данные из базы SQL запросом и поочередно отправляет СМС на каждый номер, а также заносит запись об отправке в специальную таблицу sms.
Читать далее «Скрипт отправки СМС через Goip4 шлюз»
PHP скрипт «ТОП должников АСРМ «Ника»»
Приведу пример PHP скрипта отображающего список должников из базы данных АСРМ «Ника»:
Читать далее «PHP скрипт «ТОП должников АСРМ «Ника»»»PHP. Перенаправление на другую страницу (Redirect)
Приведу пример перенаправления на другую страницу:
<?php header("Location: http://www.example.com/"); exit; ?>
Пример перенаправления через указанное количество секунд:
<?php header('Refresh: 5; URL=http://www.example.com/'); echo 'Через 5 секунд Вы будете автоматически перенаправлены на другую страницу.'; exit; ?>
Пример Redirect в JavaScript (это может работать не у всех):
<script type="text/javascript"> location.replace("http://www.example.com/"); </script>
Пример Redirect в JavaScript через 5 секунд (это может работать не у всех):
<script type="text/javascript"> setTimeout('location.replace("http://www.example.com/")', 5000); </script>
Пример Redirect в HTML через 5 секунд (если указать 0, то будет переадресовывать сразу):
<meta http-equiv="refresh" content="5; url=http://www.example.com/">
Комментарии в PHP
В PHP комментарии могут быть трех типов.
Приведу пример первого (однострочный в стиле C++):
<?php echo "ТЕКСТ"; // Комментарий ?>
Второй в стиле Unix:
<?php echo "ТЕКСТ"; # Комментарий ?>
Третий многострочный:
<?php /* Комментарий Комментарий Комментарий */ echo "ТЕКСТ"; ?>