Framework foton
Инструмент для профессиональной разработки web приложений

Требование к системе


    • Сервер Apache 2.4+ или nginx+PHP-FPM
    • Тип сервера баз данных MySql/Postgresql/LiteSQL
    • Версия интерпретатора php 8.*.*
    • OC: Widows/Linux
    • Установленные модули (zip,unzip)
    • Библиотеки:
        1. Curl
        2.  XMLWriter
        3. SoapClient (не обязательно)
        4. PDO
        5. Smtp
    • Разрешенные функции
        1. exec
        2. eval

Установка системы

Для установки системы скачайте вашу версию с сайта foton.name и распакуйте архив в директорию вашего сайта.
Перейдите по адресу в строке браузера http{s}://вашсайт/install.php либо через консоль php install предварительно скачав архив, например через wget.
Создайте базу данных и укажите ее параметры на данной странице, а также лицензионный ключ, после этого войдите в открытую форму указав везде demo, перейдите в модуль Обновление модулей, и обновите модули до последней версии, также рекомендуем обновить ядро системы в верхней панели, а также в разделе пользователи изменить ваши данные, более безопасно создать нового администратора, зайти под ним и удалить demo администратора, иначе после изменения логина вас выбросит из системы с ошибкой, и если вы не верно ввели пароль или забыли его вам придется вручную менять ваш пароль в базе данных. Также рекомендуем создать ваш личный ключ нажав на соответствующий значок в верхней панели РСИ, данный ключ требует синхронизации времени вашего устройства с вашим сервером.

Установка для LiteSQL - Для установки системы скачайте вашу версию с сайта foton.name и распакуйте архив в директорию вашего сайта.
Удалите лишние файлы pbase.sql,base.sql,install.php откройте файл core/setting/main.php и укажите: 


$FS→host ='localhost';
$FS→sql ='lite';
$FS→dbname ='foton';


Далее перейдите по адресу http{s}://вашсайт/admin/, далее шаги такие же как и для других SQL версий.


Методы работы с ролями и пользователями

$this->core->chmodID($arr,$result=true) - $arr – массив id ролей, если роль текущего пользователя есть в массиве выводит true, если нет false, служит для проверки доступа текущего пользователя, для получения в любом случае ответа false/true в последний параметр пишем true

Методы модуля ядра Foton\Module\User

isAuth() - проверяет авторизован ли пользователь в системе, если да, возвращает true, иначе false

ipUser() - выводит ip адрес пользователя.

ExitAdmin() - выполнит выход из системы 

roleAuth() - выведет роль текущего пользователя

Login() - выведет логин текущего пользователя

ListAuth() - выведет все поля таблицы авторизованного пользователя

auth($login = null, $passw = null, $key1 = null, $key2 = null)
$login — логин пользователя
$passw — пароль пользователя 
$key1 — первый секретный ключ
$key2 — второй секретный ключ
Выполняет авторизацию пользователя 

Основные хелперы

FotonOrm() - обьект ORM Foton

FotonIp() - выдает уникальный ключ по ip пользователя

FotonMobile() - проверяет пользователь зашел с мобильного устройства или десктоп

FotonSessionGet($name=null) - выводит значение поля сессии по ее имени

FotonSessionSet($name,$value,$time=null,$path=null) - создает переменную сессии со значением и сохраняет куки по указанному пути на указанное  время

FotonWrite($file,$text,$count) - запись большого текста в файл на генераторах, count - число разбиений

FotonRead($file) - построчное чтение из файла на генераторах

FotonClearLog() - очистка общего файла логов

FotonLog($text = null, $format = null) - запись лога, format имеет следующие значения:


F - запись в файл лога
L - вывод в консоли браузера console.log
J - вывод json текстом
S - вывод сериализованного текста лога


без указания формата выводит текст, если строка и json если массив

FotonIsToken() - проверяет верные ли куки

FotonToken() - выдает уникальный токен по дате и пользователю

FotonIpUser() - выводит ip пользователя

FotonHttps() - выполняет редирект на https

FotonGit($path) - выводит путь к файлу или директории с учетом системы Git Foton


© Copyright 2026 Разработано на Framework Foton
Продукт зарегистрирован в Роспатенте