Skip to content
This repository

A small library for object-oriented string manipulation with PHP.

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 src
Octocat-spinner-32 tests
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .travis.yml
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README.md
Octocat-spinner-32 composer.json
Octocat-spinner-32 phpunit.xml.dist
README.md

SimpleString

Build Status

A small library for string manipulation with PHP. SimpleString uses method overloading to create an object-oriented interface for the built-in string functions in PHP. It implements a fluent interface, improving how we manipulate strings, and extends functionality by providing common implementations. It also aims to eliminate the problems of unorganized function names.

SimpleString also uses overloading to create an object-oriented interface for built-in string functions. Functions starting with str or str_ can just be used with their actual name, not prefix. So: strtolower = tolower, str_replace = replace. Functions whose return values are not string are invalid and will throw exceptions.

Authors and contributors

License

New BSD license

Todo

  • add more functionality, but keep the library simple and easy to use (loyal to it's name)
  • create a better documentation (detail every method)
  • error handling can, and should, be improved (throw decent exceptions)
  • complete Multibyte String awareness

Using SimpleString

The idea behind SimpleString is to keep things very easy to use, while giving lot's of power to the user. Check it out:

<?php

use Simple\Type\String;

// Example
$string = new String('Lorem ipsum dolor sit amet lorem ipsum');
$string->shorten(10);
$string->toSentenceCase();
echo $string;

// Fluent interface example
$string = new String('Lorem ipsum dolor sit amet lorem ipsum');
$string->shorten(15)->toCamelCase();
echo $string;

/**
 * SimpleString also uses overloading to create an object-oriented
 * interface for built-in string functions. Functions starting with
 * str or str_ can just be used with their actual name, not prefix.
 *
 * So: strtolower = tolower, str_replace = replace.
 *
 * Functions whose return values are not string are invalid and will
 * throw exceptions.
 */
$string = new String('Lorem ipsum dolor sit amet lorem ipsum');
$string->tolower()->replace('lorem', 'mortem');
echo $string;


Something went wrong with that request. Please try again.