/php-inflector

PHP Inflector, ported from Rails

Primary LanguagePHPMIT LicenseMIT

PHP Inflector Build Status

PHP Inflector Library, ported from Rails

Minimum Requirements

Installation

The easiest way to use PHP Inflector is by installing it with Composer

Create or update composer.json:

{
  "require": {
    "koenpunt/php-inflector": "1.0.*"
  }
}

And run composer install

Features

  • Basics:

    • singularize
    • pluralize
    • singularize
    • camelize
    • underscore
    • humanize
    • titleize
    • tableize
    • classify
    • dasherize
    • denamespace
    • foreign_key
    • ordinalize
  • Internationalization

    • transliterate
    • parameterize

Usage

PHP Inflector is implemented as class with static functions

Inflector::underscore("PhpInflector\Inflector"); # => php_inflector/inflector

PhpInflector\Inflector::parameterize("Ærøskøbing on Water"); # => aeroskobing-on-water

PhpInflector\Inflector::foreign_key("Admin\Post"); # => post_id

PhpInflector\Inflector::denamespace("PhpInflector\Inflector\Inflections"); # => Inflections

PhpInflector\Inflector::dasherize("puni_puni"); # => puni-puni

It is also possible to add custom inflections, like acronyms:

PhpInflector\Inflector::inflections(function($inflect){
  $inflect->acronym('RESTful');
});

PhpInflector\Inflector::titleize('RESTfulController'); # => RESTful Controller

More examples and documentation can be found in the source.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request