О web-разработке
и даже немного больше...

Скрипт генератора диапазона цен

Что это такое?

Генератор диапазона цен представляет из себя библиотеку, написанную на языке PHP версии 5.x. Класс может быть использован в интернет магазинах и различных каталогах, и не только. Суть его работы заключается в формировании ценовых диапазонов, на основе минимальной и максимальной величины. Он прост в использовании, и для его подключения достаточно базовых знаний PHP.

Как он работает?

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

Как его подключить?

Перед тем как использовать класс необходимо подключить файл в котором он находиться.
В нашем случае имя файла: price_range.class.php
Подключать файл класса необходимо перед обращением к классу.

Подключение файла класса:

<php require_once ('price_range.class.php'); ?>

Класс имеет имя: PriceRange, создаем объект класса:

<php $obj = new PriceRange(); ?>

Основной метод класса, который генерирует диапазон цен называется get_price_range.

Входные данные:
$start_price — стартовая цена
$end_price — конечная цена
$sort — сортировка, может быть ‘asc’ или ‘desc’. По умолчанию параметр равен ‘asc’.

Обращаемся к методу:

<php $arrResult = $obj -> get_price_range ( $start_price, $end_price, $sort ); ?>

При успешном обращении к методу, результат занесенный в $arrResult будет в виде массива такой структуры:

Array
(
    [1] => Array
        (
            [min] => 500
            [max] => 600
            [divided_min] => 500
            [divided_max] => 600
        )

    [2] => Array
        (
            [min] => 600
            [max] => 1000
            [divided_min] => 600
            [divided_max] => 1 000
        )

)

Образец шаблона для вывода
Шаблон вывода вы можете менять на своё усмотрение, пример простого шаблона вывода:

<?php
if (is_array($arrResult)){
echo '<ul>';
  foreach ($arrResult as $key => $val) {
	 echo '<li>'.$val['divided_min'].' $ - '.$val['divided_max'].' $</li>';
  }
echo '<ul>';
}
?>

В итоге:

<?php
require_once ('price_range.class.php'); // подключаем файл класса
 
$obj = new PriceRange(); // создаем экземпляр класса
$start_price = 100; // стартовая цена
$end_price = 5600; // конечная цена
$sort = "desc"; // сортировка, по ум. asc
 
// вызываем метод
$arrResult = $obj -> get_price_range ( $start_price, $end_price, $sort );
 
// формируем вывод
if (is_array($arrResult)){
 echo '<ul>';
	foreach ($arrResult as $key => $val) {
	echo '<li>' . $val['divided_min'] . ' $ -  ' . $val['divided_max'] . ' $</li>';
	}
 echo '<ul>';
}
?>

Пример:
Давайте предположим что у нас имеется два значения: начальная цена 150 $ и конечная цена 15000 $, посмотрим как класс сгенерирует диапазон для этих величин.
• 100 $ — 200 $
• 200 $ — 300 $
• 300 $ — 500 $
• 500 $ — 800 $
• 800 $ — 1 300 $
• 1 300 $ — 2 100 $
• 2 100 $ — 3 400 $
• 3 400 $ — 5 500 $
• 5 500 $ — 8 900 $
• 8 900 $ — 14 400 $
• 14 400 $ — 15 000 $

Скачать файл скрипта вы можете по этой ссылке.

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

Опубликован: 10.01.2013 г.

См. также:

Редакторы кода для PHP
Как просмотреть время загрузки страницы в PHP?
Генерация QR-кода в PHP
Загрузка файлов на сервер посредством Ajax
Импорт записей из Excel в WordPress
Парсинг XML в PHP
Установка IonCube на XAMPP
Создание PDF файлов в PHP

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Комментарии
  • Загрузка...
Друзья сайта