koriym / query-locator
Load and manage SQL queries from files
Installs: 213 836
Dependents: 3
Suggesters: 0
Security: 0
Stars: 9
Watchers: 3
Forks: 1
Open Issues: 0
Requires
- php: >=7.1.0
Requires (Dev)
- doctrine/coding-standard: ^9.0
- phpmd/phpmd: ^2.15
- phpstan/phpstan: ^1.11
- phpunit/phpunit: ^9.5.10
- ray/di: ^2.7.2
- vimeo/psalm: ^4.12
Suggests
- ext-apcu: *
README
Koriym.QueryLocator is a PHP library that helps you manage SQL queries by locating and loading them from the file system. This approach simplifies query management and enhances code readability.
Installation
Install the library using Composer:
$ composer require koriym/query-locator
Usage
Basic Example
To use the QueryLocator class, instantiate it with the directory where your SQL files are stored. You can then retrieve queries using keys that correspond to the directory structure.
SQL Files Directory Structure
└── sql
└── admin
└── user.sql
Code Example
use Koriym\QueryLocator\QueryLocator; // Define the directory where your SQL files are stored $sqlDir = 'path/to/sql/files'; // Instantiate the QueryLocator $query = new QueryLocator($sqlDir); // Retrieve a query $sql = $query['admin/user']; // This will load the contents of 'admin/user.sql' // Retrieve a count query $countSql = $query->getCountQuery('admin/user'); // This will generate 'SELECT COUNT(*) FROM user'
Features
- File-Based Query Management: Store your SQL queries in separate files for better organization.
- Simple Query Retrieval: Use directory-based keys to retrieve queries.
- Count Query Generation: Automatically generate count queries.
Benefits
- Improved Readability: Keep your PHP code clean and readable by moving SQL queries to dedicated files.
- Easy Maintenance: Modify your SQL queries without changing the PHP code, just update the SQL files.
- Structured Organization: Organize your queries in a directory structure that makes sense for your application.