https://github.com/creativestyle/php-utilities
A collection of simple but quite handy PHP utility functions for arrays, strings and randomness
https://github.com/creativestyle/php-utilities
Last synced: 12 months ago
JSON representation
A collection of simple but quite handy PHP utility functions for arrays, strings and randomness
- Host: GitHub
- URL: https://github.com/creativestyle/php-utilities
- Owner: creativestyle
- Created: 2017-10-19T16:44:19.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2019-03-22T17:07:11.000Z (over 7 years ago)
- Last Synced: 2024-11-14T15:15:26.614Z (over 1 year ago)
- Language: PHP
- Homepage:
- Size: 19.5 KB
- Stars: 3
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[](https://travis-ci.org/creativestyle/php-utilities)
Common PHP Utilities Library
============================
A collection of utility methods for Strings, Arrays and Numbers. A must-have in most projects.
## Installation
```
composer require creativestyle/utilities
```
## ArrayHelpers
### `pickColumn(array $table, $column)`
Assuming that you've got an array of associate arrays (`$table`) this method
will return a single-dimensional array with values of the selected key (`$column`).
### `pick(array $keys, array $subject)`
Picks selected `$keys` from the `$subject` associative array.
### `map(array $arr, $callback)`
Maps the array allowing you to change the keys.
Callback is called with (`$key`, `$value`) parameters and shall return a `[$newkey => $newvalue]` array.
It's possible to map a single entry to multiple by returning more than one item from the `$callback`.
### `average(array $arr, $key = null)`
Averages array values.
If key is set then the column indicated by key is averaged.
## RandHelpers
### `seed()`
Returns long string of digits.
### `randBool($trueChance)`
Returns random bool with `$trueChance` [0, 1] of returning `true`.
### `arrayRand(array $array)`
Returns random array element.
### `sample(array $array, $count = 1)`
Returns `$count` unique random elements from the `$array`.
If the desired number of results is equal or greater to the array size then the array is shuffled.
If it's less or equal to 0, then empty array is returned.
### `gaussianRand($mu, $sigma)`
Returns a random number from gaussian distribution with desired params.
### `normalProbabilityDensity($x, $mu, $sigma)`
Returns a random number from normal distribution with desired params.
## StringHelpers
### `urlize($text)`
Transliterates the text keeping only alphanumeric characters and `-`.
Whitespace is collapsed and transformed to `-`.
### `slugify($text)`
Alias to `urlize()`.
### `joinNotEmpty(array $elements, $delimiter = ', ')`
Behaves the same way as `implode` but skips empty array elements.
### `endsWith($haystack, $needle)`
Checks if `$haystack` ends with `$needle`.
### `startsWith($haystack, $needle)`
Checks if `$haystack` starts with `$needle`.
### `convertToTitleCase($string)`
Converts the string To The Title Case.
### `capitalize($string)`
Capitalizes the string (same as `ucfirst`) in a multibyte-safe manner.
### `humanize($text)`
Humanizes a camelCase variable name. For example `virtualRealityInterposer` will become `Virtual reality interposer`.
### `humanizeConst($constName)`
Works similar to `humanize` but converts const names like `VIRTUAL_REALITY_INTERPOSER`.
### `isCoercibleToString($value)`
Returns true if the value can be converted to string (is a scalar or has `__toString` method).