underscore是前端经常使用的javascript库,最近无心中发现原来它还有PHP的移植。javascript
绝大部分函数都移植过来了。underscore.js用的是_
,但是这个在PHP中已经用来表示gettext()
了,因此改为了__
,双下划线。php
使用很简单:前端
__(array(1, 2, 3))->map(function($n) { return $n * 3; });
或者,若是你偏心静态风格:java
__::map(array(1, 2, 3), function($n) { return $n * 3; });
结果:git
Array ( [0] => 3 [1] => 6 [2] => 9 )
通常用Composer安装:github
"anahkiasen/underscore-php" : "dev-master"
若是用Laravel框架,能够用artisan
:composer
artisan bundle:install underscore
而后在bundles文件中加入这行:框架
'underscore' => array('auto' => true),
若是你这么传统……那固然也是能够的。ide
绝大部分都移植过来了:函数
each, map, reduce, reduceRight, detect, select, reject, all, any, includ, invoke, pluck, max, min, groupBy, sortBy, sortedIndex, toArray, size
first, rest, last, compact, flatten, without, uniq, union, intersection, difference, zip, indexOf, lastIndexOf, range
memoize, throttle, once, after, wrap, compose
keys, values, functions, extend, defaults, clon, tap, isEqual, isEmpty, isObject, isArray, isFunction, isString, isNumber, isBoolean, isDate, isNaN, isNull
identity, times, mixin, uniqueId, template
chain, value
我本身更习惯写原生PHP。不过这个库能够帮助从前端转过来的同窗,因此这里和你们分享一下。