Користувальницькькі налаштування

Налаштування сайту


ubrouting

Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Порівняння попередніх версій Попередня ревізія
Наступна ревізія
Попередня ревізія
Остання ревізія По сторонах наступні версії
ubrouting [2023/06/16 17:20]
skybetik [О получении значений переменных]
ubrouting [2023/06/16 17:34]
skybetik [О Исключениях]
Рядок 109: Рядок 109:
  
 До речі, у разі, якщо ви намагаєтеся отримати змінну за допомогою **::get** або **::post**, а її немає (так, вона тупо не isset), обидва ці методи будуть чесно повертати **false**. Не забуваємо, що для таких перевірок слід використовувати порівняння типу !==false, а не прямий if (!ubRouting::get('somevar')), бо він буде спрацьовувати як у разі порожньої змінної, так і її неіснування в принципі.   До речі, у разі, якщо ви намагаєтеся отримати змінну за допомогою **::get** або **::post**, а її немає (так, вона тупо не isset), обидва ці методи будуть чесно повертати **false**. Не забуваємо, що для таких перевірок слід використовувати порівняння типу !==false, а не прямий if (!ubRouting::get('somevar')), бо він буде спрацьовувати як у разі порожньої змінної, так і її неіснування в принципі.  
-=====  О их фильтрации ===== +=====  Щодо їхньої фільтрації ===== 
  
-Также вы можете фильтровать данные прямо в процессе их получения, налету. Допустим, мы хотим быть уверенными, что в newname у нас будут буковки, циферки и вообще что угодно но отфильтрованое для записи в MySQL а в newsize - только циферки. +Також ви можете фільтрувати дані прямо в процесі їх отримання, нальоту. Припустимо, ми хочемо бути впевненими, що в newname у нас будуть літери, циферки і взагалі що завгодно, але відфільтроване для запису в MySQLа в newsize - тільки циферки. 
  
  
Рядок 122: Рядок 122:
 </code> </code>
  
-Да. Это управляется вторым параметром методов get/post. Их возможные значения:+ТакЦе керується другим параметром методів get/post. Їхні можливі значення:
  
-  * **raw** (по-умолчанию) - данные будут возвращены ак есть" без какой либо предварительной обработки +  * **raw** (за замовчуванням) - дані будуть повернуті "як є" без будь-якої попередньої обробки 
-  * **int** - из данных будет отфильтровано вообще все, кроме циферок в диапазоне [0-9] +  * **int** - з даних буде відфільтровано взагалі все, крім циферок у діапазоні [0-9] 
-  * **mres** - для данных будет предварительно запущена функция mysql_real_escape_string() +  * **mres** - для даних буде попередньо запущена функція mysql_real_escape_string() 
-  * **callback** - для данных будет запущена функция с именем указанным в третьем параметре собственно $callback. +  * **callback** - для даних буде запущено функцію з ім'ям, зазначеним у третьому параметрі власне $callback. 
-  * **fi** - данные будут пропущены через [[https://www.php.net/filter|filter]].+  * **fi** - дані буде пропущено через [[https://www.php.net/filter|filter]].
  
-Пример того, как вы можете использовать коллбэк функции:+Приклад того, як ви можете використовувати колбек функції:
 <code php> <code php>
 $newAnother= ubRouting::post('newanother','callback','vf'); $newAnother= ubRouting::post('newanother','callback','vf');
 </code> </code>
  
-Да. Точно также вы можете получать и фильтровать данные из GET переменных:+Так. Так само ви можете отримувати і фільтрувати дані з GETмінних:
 <code php> <code php>
 $newAnother= ubRouting::get('newanother','int'); $newAnother= ubRouting::get('newanother','int');
Рядок 141: Рядок 141:
  
  
-Также для обоих методов ::get и ::post вы можете указывать множественные коллбэк функции, просто оформив их список в виде массива. Например так:+Також для обох методів ::get і ::post ви можете вказувати множинні колбек-функції, просто оформивши їхній список у вигляді масиву. Наприклад так:
  
 <code php> <code php>
Рядок 148: Рядок 148:
 </code> </code>
  
-Коллбэк функции для данных будут вызваны последовательно, в порядке их описания. Конечно же никто вам не запрещает описывать это все и в одну строку.+Коллбек-функції для даних будуть викликані послідовно, у порядку їхнього опису. Звичайно ж ніхто вам не забороняє описувати це все і в один рядок.
  
 <code php> <code php>
Рядок 154: Рядок 154:
 </code> </code>
  
-А что если вам нужны одни и те же данные и в сыром виде и отфильтрованныеДа, вы без проблем можете точно так-же вызывать из объекта методы фильтрации с теми же параметрами, например так:+А що якщо вам потрібні одні й ті самі дані і в сирому вигляді, і відфільтрованіТак, ви без проблем можете так само викликати з обкта методи фільтрації з тими ж параметрами, наприклад так:
  
 <code php> <code php>
Рядок 161: Рядок 161:
 </code> </code>
  
-Также вы можете использовать штатные механики filter указав режим фильтрования как fi (filter input):+Також ви можете використовувати штатні механіки filter, вказавши режим фільтрування як fi (filter input):
 <code php>  <code php> 
 $data = ubRouting::get('another','fi',FILTER_SANITIZE_NUMBER_INT); $data = ubRouting::get('another','fi',FILTER_SANITIZE_NUMBER_INT);
 </code> </code>
-=====  О навигации ===== +=====  Про навігацію ===== 
  
-Возможно вам захочется делать при помощи этого же объекта какую-то внутреннюю навигацию. Для этого есть короткий и удобный метод nav($url) который вы можете использовать как-то так:+Можливовам захочеться робити за допомогою цього ж обкта якусь внутрішню навігацію. Для цього є короткий і зручний метод nav($url), який ви можете використовувати якось так:
  
 <code php> <code php>
Рядок 173: Рядок 173:
 </code> </code>
  
-Да, это всего навсего просто удобный и короткий алиас для rcms_redirect($url)+Такце всього навсього просто зручний і короткий аліас для rcms_redirect($url)
  
-===== Сырые данные ===== +===== Сирі дані ===== 
  
-Также можно получать копии суперглобальных массивов $_GET и $_POST целиком, при помощи соответствующих методов.+Також можна отримувати копії суперглобальних масивів $_GET і $_POST цілком, за допомогою відповідних методів.
  
 <code php> <code php>
Рядок 185: Рядок 185:
  
  
-=====  О Исключениях ===== +=====  Про Винятки ===== 
  
-При попытках использования недопустимых $filtering или неверном указании коллбек-функции в ::get/::post методах а также пустых параметрах для ::check методов, будут выброшены соответствующие исключения:+У разі спроб використання неприпустимих $filtering або невірної вказівки колбек-функції в ::get/::post методаха також порожніх параметрах для ::check методів, будуть викинуті відповідні винятки:
  
-  * **EX_WRONG_FILTERING_MODE** - несуществующий режим фильтрования данных. +  * **EX_WRONG_FILTERING_MODE** - неіснуючий режим фільтрування даних. 
-  * **EX_CALLBACK_NOT_DEFINED** - коллбэк функция не существует/не объявлена. +  * **EX_CALLBACK_NOT_DEFINED** - коллбек функція не існує/не оголошена. 
-  * **EX_CALLBACK_EMPTY** - пустое имя коллбэк функции+  * **EX_CALLBACK_EMPTY** - порожнє ім'я колбек функції
-  * **EX_FILTER_EMPTY** - пустое имя фильтра. +  * **EX_FILTER_EMPTY** - порожнє ім'я фільтра. 
-  * **EX_PARAMS_EMPTY** - пустое имя или массив имен переменных для check+  * **EX_PARAMS_EMPTY** - порожнє ім'я або масив імен змінних для check
  
 ===== О синтаксисе =====  ===== О синтаксисе ===== 
ubrouting.txt · Востаннє змінено: 2023/06/16 17:36 повз skybetik