Интересное

Проверено

VDS-хостинг - именно на этом хостинге работает наш сайт.
Sape - биржа временных ссылок, доход 80р/день.
Trustlink - биржа временных ссылок, доход 60р/день.

Партнеры

Последние сообщения с форума

Название темы Автор Статистика Последнее сообщение
продажа аккаунтов разных сервисов

Тема в разделе: Услуги и сервисы ваших web-сайтов

Sdelkin

Просмотров: 179820

Ответов: 26

Автор: Sdelkin

3-02-2018, 18:55

хостинг от M-HOSTER

Тема в разделе: Хостинг

wmmax

Просмотров: 57670

Ответов: 0

Автор: wmmax

1-02-2018, 15:42

Комплексное продвижение (прогон) сайтов ру и en

Тема в разделе: Поисковая оптимизация

Kysovue

Просмотров: 142522

Ответов: 73

Автор: Kysovue

25-01-2018, 21:16

Special offer! SSD NVMe хостинг, Выделенный сервер и VPS SSD

Тема в разделе: Хостинг

iphoster

Просмотров: 61148

Ответов: 0

Автор: iphoster

10-11-2017, 22:56

продвижение сайтов, прогоны

Тема в разделе: Поисковая оптимизация

brig2

Просмотров: 77663

Ответов: 7

Автор: brig2

5-11-2017, 14:00

4 небольших, но весьма полезных функции PHP

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

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

function setReporting() {
    if (DEVELOPMENT_ENVIRONMENT == true) {
        error_reporting(-1);
        ini_set('display_errors','On');
    } else {
        error_reporting(-1);
        ini_set('display_errors','Off');
        ini_set('log_errors', 'On');
        ini_set('error_log', ROOT.DS.'lm/tmp'.DS.'logs'.DS.'error.log');
    }
}


Путь к хранилищу сообщений об ошибках в последней строке нужно установить свой.

Вторая функция является вспомогательной для третьей функции:

function stripSlashesDeep($value) {
    $value = is_array($value) ? array_map('stripSlashesDeep', $value) : stripslashes($value);
    return $value;
}


Она используется в следующей функции:

function removeMagicQuotes() {
    if ( get_magic_quotes_gpc() ) {
        $_GET     = stripSlashesDeep($_GET   );
        $_POST   = stripSlashesDeep($_POST  );
        $_COOKIE = stripSlashesDeep($_COOKIE);
    }
}


Если окружение использует Magic Quotes, то выше приведенная функция пропускает обработку строк.

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

function unregisterGlobals() {
    if (ini_get('register_globals')) {
        $array = array('_SESSION', '_POST', '_GET', '_COOKIE', '_REQUEST', '_SERVER', '_ENV', '_FILES');
        foreach ($array as $value) {
            foreach ($GLOBALS[$value] as $key => $var) {
                if ($var === $GLOBALS[$key]) {
                    unset($GLOBALS[$key]);
                }
            }
        }
    }
}


И приложение снова в безопасности.

Такие мелочи существенно облегчают жизнь при разработке проектов на PHP.

Другие новости по теме: