jawira / case-converter
Convert strings between 13 naming conventions: Snake case, Camel case, Pascal case, Kebab case, Ada case, Train case, Cobol case, Macro case, Upper case, Lower case, Sentence case, Title case and Dot notation.
Installs: 297 619
Dependents: 35
Suggesters: 0
Security: 0
Stars: 83
Watchers: 2
Forks: 5
Open Issues: 2
Requires
- php: >=7.1
- ext-mbstring: *
Suggests
- pds/skeleton: PHP Package Development Standards
- phing/phing: PHP Build Tool
README
Use this library to convert string between:
Name | Method | Output example |
---|---|---|
🐪 Camel case | toCamel() |
myNameIsBond |
👨🏫 Pascal case | toPascal() |
MyNameIsBond |
🐍 Snake case | toSnake() |
my_name_is_bond |
👩🏫 Ada case | toAda() |
My_Name_Is_Bond |
Ⓜ️ Macro case | toMacro() |
MY_NAME_IS_BOND |
🥙 Kebab case | toKebab() |
my-name-is-bond |
🚂 Train case | toTrain() |
My-Name-Is-Bond |
🏦 Cobol case | toCobol() |
MY-NAME-IS-BOND |
🔡 Lower case | toLower() |
my name is bond |
🔠 Upper case | toUpper() |
MY NAME IS BOND |
📰 Title case | toTitle() |
My Name Is Bond |
✍️ Sentence case | toSentence() |
My name is bond |
⚙️ Dot notation | toDot() |
my.name.is.bond |
Features:
Usage
Input string (i.e. john-connor) format is going to be detected automatically. Here's an example:
use Jawira\CaseConverter\Convert; $hero = new Convert('john-connor'); echo $hero->toCamel(); // output: johnConnor
Of course you can explicitly set the format of input string:
echo $hero->fromKebab()->toSnake(); // output: john_connor
You can also use the provided factory to instantiate Convert
class.
A list of all public methods is also available.
i18n
Fully compatible with non-english alphabets:
// Spanish $esp = new Convert('DON_RAMÓN_Y_ÑOÑO'); echo $esp->toCamel(); // output: donRamónYÑoño // Greek $grc = new Convert('πολύ-Καλό'); echo $grc->toCamel(); // output: πολύΚαλό // Russian $rus = new Convert('ОЧЕНЬ_ПРИЯТНО'); echo $rus->toCamel(); // output: оченьПриятно
case-converter
is compatible with Simple Case-Mapping and Full
Case-Mapping. Learn more about Case-Mapping.
Installation
$ composer require jawira/case-converter
Documentation
https://jawira.github.io/case-converter/
Contributing
- If you liked this project, ⭐ star it on GitHub.
- Pull requests and issues are welcomed.
Contributors
License
This library is licensed under the MIT LICENSE.
Packages from jawira
- jawira/emoji-catalog (library)
- Get access to +3000 emojis as class constants.
- jawira/phing-visualizer (library)
- Graphical representation of Phing's buildfile.
- jawira/phing-open-task (library)
- Phing task to open files, directories, and URLs with your favorite software.
- more...