Skip to content

uxmansarwar/response

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

22 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

πŸ“¦ Response – Elegant PHP API Response Handler

Packagist PHP Version License GitHub Stars

πŸ” Overview

uxmansarwar/response is a powerful yet lightweight PHP package that makes it easy to manage structured API responses. Built with modern PHP practices, it follows a clean singleton pattern and supports result grouping, TTL, debug queries, and more. Ideal for Laravel, Symfony, WordPress, CodeIgniter, or raw PHP projects.

Developed and maintained by Uxman Sarwar, a senior PHP developer since 2013.

βœ… Features

  • Singleton-based fluent API
  • Add results, errors, queries, TTL, and input metadata
  • Auto-collects $_GET, $_POST, and raw JSON input
  • Customizable result/error key groups with key() and index()
  • Get structured responses as JSON or array
  • Great for APIs, microservices, and AJAX handlers

βš™οΈ Installation

Via Composer

composer require uxmansarwar/response

πŸš€ Quick Start

Initialize

use UxmanSarwar\Response;

Response::init();

Add Result

Response::result(['id' => 1, 'name' => 'Alice']);

Add Error

Response::error('Invalid request type');

Grouped Result with Key/Index

Response::key('user')->index('info')->result(['email' => 'user@example.com']);

Set Time-To-Live (TTL)

Response::ttl(60);

Attach Debug Query

Response::query('SELECT * FROM users WHERE id = 1');

Include Input Data

Response::input(true);

Output as JSON

echo Response::json();

Output as Array

print_r(Response::array());

πŸ’‘ Example Use Case: API Endpoint

Response::init();

if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
    Response::error("Only POST requests are allowed");
} else {
    $data = Response::$_INPUT;
    if (empty($data['username'])) {
        Response::error("Username is required");
    } else {
        Response::result("User registered successfully");
    }
}

echo Response::json();

πŸ§ͺ Testing

composer install
vendor/bin/phpstan analyse src --level=max
vendor/bin/pest

🌐 Use Cases

  • Laravel: Replace default response()->json() with a fluent helper
  • WordPress: Handle AJAX with structured output
  • Symfony: Wrap controller responses with grouped structure
  • REST APIs: Make consistent error/result formatting
  • Microservices: Inject debug info and TTL for downstream caching

πŸ‘¨β€πŸ’» About the Author

This package is created by Uxman Sarwar, a full-stack PHP Laravel developer.

If you found this package useful, consider ⭐ starring the repo and sharing it with other developers.


πŸ”— SEO & GitHub Keywords

PHP API response library, structured API output PHP, response formatter, Laravel response helper, singleton response PHP, uxmansarwar response composer, REST API output PHP, error handler class PHP, api response json PHP, PHP response class Laravel


πŸ“₯ Composer Install Reminder

composer require uxmansarwar/response

Happy coding! πŸš€

About

This handle responses from any function or class

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Languages