nader/essance 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

nader/essance

Composer 安装命令:

composer require nader/essance

包简介

A lightweight, single-file PHP framework to modernize legacy projects

README 文档

README

A lightweight, single-file PHP framework designed to modernize legacy projects with zero dependencies.

Installation

Install via Composer:

composer require nader/essance

Features

  • Single-file architecture - Just one file to include
  • 🚀 Modern routing system with RESTful support
  • 📁 Chunked file uploads with validation
  • 💾 Built-in caching system
  • 🔐 Session management with flash messages
  • ⚙️ Environment configuration (.env support)
  • 🛡️ Security features built-in
  • 📦 Zero dependencies

Quick Start

<?php
require_once 'vendor/autoload.php';

use Essance\Router;
use Essance\Response;

// Define a route
Router::get('/', function() {
    return Response::json(['message' => 'Hello from Essance!']);
});

// Define a route with parameters
Router::get('/user/{id}', function($request) {
    $userId = $request->param('id');
    return Response::json(['user_id' => $userId]);
});

// Run the application
Essance\Essance::getInstance()->run();

Basic Usage

Routing

// GET request
Router::get('/path', function($request) {
    // Handle request
});

// POST request
Router::post('/api/users', function($request) {
    $name = $request->input('name');
    return Response::json(['created' => true]);
});

// Route with parameters
Router::get('/post/{id}', function($request) {
    $id = $request->param('id');
    return Response::json(['post_id' => $id]);
});

// Route groups
Router::group('/api', function() {
    Router::get('/users', 'UserController@index');
    Router::post('/users', 'UserController@store');
});

File Uploads

use Essance\ChunkUpload;

Router::post('/upload', function($request) {
    $uploader = new ChunkUpload('uploads');
    $result = $uploader->handleSimple($_FILES['file']);
    return Response::json($result);
});

Caching

use Essance\Cache;

// Set cache
Cache::set('key', 'value', 3600);

// Get cache
$value = Cache::get('key');

// Remember pattern
$users = Cache::remember('users', function() {
    // Expensive operation
    return ['user1', 'user2'];
}, 3600);

Sessions

use Essance\Session;

// Set session
Session::set('user_id', 123);

// Get session
$userId = Session::get('user_id');

// Flash messages
Session::flash('success', 'Operation completed!');

Environment Configuration

Create a .env file in your project root:

APP_NAME=MyApp
APP_ENV=production
APP_DEBUG=false
APP_URL=http://localhost

UPLOAD_MAX_SIZE=10485760
CACHE_ENABLED=true
CACHE_LIFETIME=3600

Access environment variables:

$appName = env('APP_NAME', 'DefaultName');

Requirements

  • PHP 8.2 or higher
  • Apache/Nginx with mod_rewrite

License

Copyright (c) 2025 Nader Mahbub Khan

All rights reserved.

Unauthorized copying, modification, distribution, or use of this software, via any medium, is strictly prohibited without the express written permission of the author.

Branding, names, and visual elements associated with this software may not be changed, removed, or reused under any circumstances.

Author

Created by Nader Mahbub Khan

Support

For issues and questions, please use the GitHub issue tracker.

统计信息

  • 总下载量: 1
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-10-24