Component\Core\StringUtils
Component\Core\StringUtils is a simple-to-use PHP component that
provides operations on the data type string
., (*1)
, (*2)
, (*3)
, (*4)
Table of Contents (ToC)
Introduction
Introduction
The [string functions][100] of the PHP scripting language are not
consistent:, (*5)
- Some function names begin with
str
, e. g. strpos
.
- Some function names begin with
str_
, e. g. str_rot13
.
- Some function names do not begin with
str
, e. g. trim
and substr
.
Quite a lot of the built-in string functions are only Wrapper Functions for
the string functions of the underlying C programming language. Therefore a lot
of useful string functions are not included in the PHP standard library., (*6)
Component\Core\StringUtils offers static classes that offer operations on
the data type string
. The goal of this project is to create an unified and
simplified Application Programming Interface (API) for string functions to use
in the PHP scripting language., (*7)
This project is inspired by the following Java classes from the [Apache Commons
Lang Application Programming Interface (API)][101]:, (*8)
- [StringUtils][102]
- [WordUtils][103]
- [CharUtils][104]
- [RandomStringUtils][105]
The implementation has been adapted and abstracted for PHP., (*9)
Features
Requirements
Production
Development
- [PHPUnit][41]
- [phpcpd][42]
- [phpdcd][43]
- [PHP_CodeSniffer][40]
- [PHP Mess Detector (PHPMD)][44]
- [Sami][46]
- [SensioLabs Security Checker][47]
- [php-coveralls][48]
Installation
Component\Util\Singleton should be installed using the dependency manager
Composer., (*19)
Composer is a tool for dependency management in PHP. It allows you
to declare the dependent libraries your project needs and it will install them
in your project for you., (*20)
The Composer installer can be downloaded with php
., (*21)
php -r "readfile('https://getcomposer.org/installer');" | php
This will just check a few PHP settings and then download composer.phar
to your working directory. This file is the Composer binary. It is a PHAR
, which is an archive format for PHP which can be run
on the command line, amongst other things., (*22)
To resolve and download dependencies, run the install
command:, (*23)
php composer.phar install
If you are creating a component that relies on Component\Util\Singleton,
please make sure that you add Component\Util\Singleton to your component's
composer.json
file:, (*24)
{
"require": {
"duanyong/component-core-stringutils": "0.4.*"
}
}
Usage
The best documentation for Component\Core\StringUtils are the unit tests,
which are shipped in the package., (*25)
Component\Core\StringUtils contains static classes only. Therefore
instances of the classes can not be constructed., (*26)
Instead, the classes should be used as:, (*27)
StringUtils::trim(' foo ');
WordUtils::wrap('foo bar', 20);
Testing
phpunit
Contributing
Please see CONTRIBUTING for details., (*28)
Credits
License
This program is free software: you can redistribute it and/or modify it under the
terms of the GNU Lesser General Public License as published by the Free Software
Foundation, either version 3 of the License, or (at your option) any later
version., (*29)
This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details., (*30)
You should have received a copy of the GNU Lesser General Public License along
with this program. If not, see https://gnu.org/licenses/lgpl.txt., (*31)