Простые и понятные примеры PHP кода. Краткие статьи, заметки, очерки.


Как авторизоваться в почте Mail.ru на PHP. Версия 2.0: с учетом GET запроса и HTTPS

Как выяснилось способ программной авторизации на почтовом веб-сервисе популярного портала Mail.ru, представленный мною ранее больше не работает. Причина простая и достаточно банальная, — теперь для входа в ящик используется HTTPS вместо HTTP.  Плюс вместо POST-запроса теперь можно слать GET. Потому далее я приведу новый пример скрипта на PHP, который учитывает эти особенности. (далее…)

Опубликовано 10-10-2013 в 10:59

PHP пример генерации случайного пароля

Далее посетителям сайта http://red-book-cms.ru представлен один из многочисленных вариантов написания функции генерации случайных строк а-ля паролей.

<?php
/**
 * Функция генерирует случайный пароль длиной $length символов и 
 * состоящий из сочетаний строки $letters.
 *
 * @param int $length
 * @param string $letters
 * @return string
 */
function generateRandomPassword($length = 10, $letters = "1234567890qwertyuiopasdfghjklzxcvbnm") {
    $password = "";
    $lettersLength = strlen($letters) - 1;

(далее…)

Опубликовано 4-09-2013 в 15:28

PHP: получить иерархию классов объекта

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

<?php
/**
 * Функция, получая в качестве входного параметра объект,
 * возвращает массив с иерархией классов.
 * 
 * @param object $object
 * @return array
 * @throws InvalidArgumentException
 */
function getClassHierarchy($object) {
    if (is_object($object)):
        $class = get_class($object);
    elseif (!class_exists($object)):
        throw new InvalidArgumentException("class $object is not defined");
    endif;

(далее…)

Опубликовано 3-09-2013 в 17:15

Распаковка tar архивов в PHP

Сегодня в качестве логического продолжения моих предыдущих заметок, повествующих о работе с архивами формата tar в PHP, рассмотрим процесс обратный сжатию файлов в архив — распаковку.

Системные требования:

Системные требования те же: PHP версии 5.3 или старше. Используем все тот же класс PharData. Плюс к нему добавятся новые для нас методы compress() и extractTo().

Пример программного кода:

Итак, распаковываем архив «ckeditor-7.x-1.13.tar.gz» в каталог «new-folder»: (далее…)

Опубликовано 3-09-2013 в 16:48

PHP: запись в файл

Итак, ниже посетителям сайта http://red-book-cms.ru представлен пример того, как в PHP можно осуществить простую запись в файл. Смотрим Далее далеко не самый сложный программный код:

<?php
$filename = 'script-file.txt';
$content = 'Fusce ante laoreet massa natoque 
feugiat tempor adipiscing sed accumsan elit. 
Malesuada adipiscing nunc Sed Nulla ipsum 
arcu metus dictumst pharetra malesuada.';
$file = fopen($filename, "w");
if (!$file) :
    print 'Не получилось открыть файл!';
endif;
if (fwrite($file, $content) === false):
    print 'Не получилось записать в файл!';
endif;
fclose($file);
?>

(далее…)

Опубликовано 3-09-2013 в 13:50

Проверка ассоциативного массива в PHP

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

<?php
/**
 * Функция выполняет проверку массива на ассоциативность.
 * @param array $array
 * @return boolean
 */
function is_assoc(array $array) {
// Ключи массива:
    $keys = array_keys($array);

// Если массив ключей из ключей соответствует ключам, то массив должен
// быть не ассоциативным(например, ключи массива будут похожи на {0:0, 1:1 ...}).
    return array_keys($keys) !== $keys;
}

(далее…)

Опубликовано 2-09-2013 в 13:22

PHP tar bz2: упаковка файлов в архив

Далее представлен пример программной упаковки файлов в архив формата tar с применением сжатия bz2:

<?php
$filename = 'custom-archive.tar';
try {
    $tarArchive = new PharData($filename);

    $tarArchive->addFile('image1.png');
    $tarArchive->addFile('index.html');
    $tarArchive->addFile('sub-page.html');
    $tarArchive->addFile('test.xml');
    $tarArchive->addFile('document.doc');

    $tarArchive->compress(Phar::BZ2);

} catch (Exception $e) {
    print "Возникло исключение: " . $e;
}
?>

На выходе будут созданы два архива — custom-archive.tar.bz2 и custom-archive.tar, куда мы добавим в общей сложности 5 произвольных файлов. Системные требования те же PHP 5.3 и выше. Используем класс PharData и парочку его методов addFile() + compress().

Опубликовано 2-09-2013 в 11:59













Свежие комментарии

  • krasnov8953: к записи Не работает как мне кажется строчка $newTvId = $ »
  • Dimanski: к записи ничего не понимаю. Ставлю ModX на хостинг r01.ru »
  • Дмитрий: к записи Спасибо! Очень выручили. С битриксом беда, а прав »
  • леонид: к записи как сделать что были в ряд? у меня получается по о »
  • Администратор: к записи Статический IP. »
  • Steel: к записи Администратор, вы данную проблему решили подключен »
  • Дмитрий: к записи Хотел узнать как прикрутить данное окно (http://re »

Последние твиты