Search by

drago-ex / utils

accgit

ArrayHash with conversion to plain arrays (including uppercase keys) and a camelCase to snake_case converter.

Package info

github.com/drago-ex/utils

pkg:composer/drago-ex/utils

Statistics

Installs: 4 636

Dependents: 4

Suggesters: 0

Stars: 0

Open Issues: 0

v2.1.0 2026-10-17 13:17 UTC

This package is auto-updated.

Last update: 2026-10-25 08:50:49 UTC


README

English | Čeština

Small helpers for Nette applications: an ArrayHash that converts itself to an array, and a conversion from camelCase to snake_case.

License: MIT PHP version Tests Coding Style

Requirements

  • PHP >= 8.3, < 9
  • Nette Framework
  • Composer

Installation

composer require drago-ex/utils

ExtraArrayHash

Drago\Utils\ExtraArrayHash extends Nette\Utils\ArrayHash, for example as a parent of form value classes.

use Drago\Utils\ExtraArrayHash;

$data = ExtraArrayHash::from(['name' => 'John', 'address' => ['city' => 'Prague']]);

// Plain array, nested hashes included: ['name' => 'John', 'address' => ['city' => 'Prague']]
$data->toArray();

// Same, with top-level keys in uppercase (e.g. for Oracle): ['NAME' => 'John', 'ADDRESS' => [...]]
$data->toArrayUpper();

CaseConverter

Converts camelCase or PascalCase to snake_case:

use Drago\Utils\CaseConverter;

CaseConverter::snakeCase('versionName');  // version_name
CaseConverter::snakeCase('version2Name'); // version2_name
CaseConverter::snakeCase('HTMLParser');   // html_parser
CaseConverter::snakeCase('userID');       // user_id