PHPackages                             vasyl/vsql - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. vasyl/vsql

AbandonedArchivedPackage[Utility &amp; Helpers](/categories/utility)

vasyl/vsql
==========

SQL Helper

v4.11.2(4y ago)01.0kPHP

Since Sep 23Pushed 4y agoCompare

[ Source](https://github.com/y-vas/vsql)[ Packagist](https://packagist.org/packages/vasyl/vsql)[ RSS](/packages/vasyl-vsql/feed)WikiDiscussions master Synced 1w ago

READMEChangelogDependencies (1)Versions (60)Used By (0)

VSQL
====

[](#vsql)

// site

VSQL is a query helper and abstraction layer for php.

### COMPOSER INSTALATION

[](#composer-instalation)

```
composer require vasyl/vsql
```

### Basic Script

[](#basic-script)

```
use VSQL\VSQL\VSQL;

// set this to true if you are on debug mode
$_ENV['VSQL_INSPECT'] = true;

// declare the database variables in ENV
$_ENV[  'DB_HOST'  ] = 'host';
$_ENV['DB_USERNAME'] = 'name';
$_ENV['DB_PASSWORD'] = 'pass';
$_ENV['DB_DATABASE'] = 'dtbs';

$v = new VSQL( );
$query = $v->query(
   " SELECT * FROM Table T
     WHERE TRUE
    { AND T.name = :name } "
  ,[ 'name' => 'vsql' ]
  , true
);

// what query will return
/*
  $query
  "
  SELECT * FROM Table T
  WHERE TRUE
  AND T.name = 'vsql'
  "
*/

$res = $v->get( $list = true );
//returns a standart class object

// if you want to return the mysqli instance run this instead
// $mysqli = $v->run( $list = true );
```

#### Handeling Big queries is now easy

[](#handeling-big-queries-is-now-easy)

Given this values and this query

```
$values = [
  'name'     => 'vsql',
  'getbasic' => true,
  'pass'     => 'secret'
]
```

Givent Query

```
SELECT
  :name
  { , d.name :extra_cols }
  { , d.name ,d.surname, d.pass  getbasic; }
  , d.id
FROM dbtable d
WHERE TRUE
AND d.surname like '%{:surname}%'
{ AND d.type = i:type }
{ AND d.pass = s:pswd }
{ AND d.id   = i:id   }
```

Output Query

```
SELECT
  vsql
  , d.name ,d.surname, d.pass
  , d.id
FROM dbtable d
WHERE TRUE
AND d.surname like '%%'
AND d.pass = 'secret'
```

### Transformers

[](#transformers)

transformer variables returns i'string',0 ,'123.3', null0,0 ,123, 0+i'string',0 ,'-123.3', -20,0 ,123, 2f'string',0 ,'123.3', null0,0 ,123.3, 0+f-3, -1.3 ,0 ,'123.3' , null3, 1.3 ,0 ,123.3, 0s'string',0 ,'123.3', null'string','0','123.3',''t' string ',0 ,'123.3', null'string','0','123.3',''array/implode\['string',0 ,'123.3', null\]'string,0,123.3,'json\['string',0 ,'123.3', null\]'\["string",0,"123.3",null\]'### Classes

[](#classes)

- VSQL
    - Query Compiler `php $db->query('select * from dbtable',array()); `
    - Fetch Rows `php $db->get( $list = false ); `
    - Execute `php $db->run(  $list = false ); /* retuns mysql instance */`

###  Health Score

32

—

LowBetter than 72% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity72

Established project with proven stability

 Bus Factor1

Top contributor holds 98.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~15 days

Recently: every ~21 days

Total

58

Last Release

1580d ago

Major Versions

v1.0.0 → v3.12020-02-24

v3.4.1 → v4.12020-03-04

### Community

Maintainers

![](https://www.gravatar.com/avatar/3a306c68dffe4087554dfd251dc9539afdac01df745bffe15830008f13da37ae?d=identicon)[yovdiyvasyl](/maintainers/yovdiyvasyl)

---

Top Contributors

[![y-vas](https://avatars.githubusercontent.com/u/25935526?v=4)](https://github.com/y-vas "y-vas (267 commits)")[![abalbastrem](https://avatars.githubusercontent.com/u/29225588?v=4)](https://github.com/abalbastrem "abalbastrem (3 commits)")[![25mordad](https://avatars.githubusercontent.com/u/8155481?v=4)](https://github.com/25mordad "25mordad (1 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/vasyl-vsql/health.svg)

```
[![Health](https://phpackages.com/badges/vasyl-vsql/health.svg)](https://phpackages.com/packages/vasyl-vsql)
```

###  Alternatives

[mention/retry

A Retry library for PHP

1324.5k](/packages/mention-retry)[irfa/php-gatcha

Simple Items Gatcha with PHP

362.4k](/packages/irfa-php-gatcha)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
