zzal / cakephp-hash
使用令人惊叹的 cakePHP 的 Hash 类的 XPath-like 路径语法处理复杂数组
dev-master
2013-05-22 18:04 UTC
Requires
- php: >=5.3.0
This package is not auto-updated.
Last update: 2024-09-23 13:06:29 UTC
README
请注意,此包处于 beta 开发阶段。
这是一个简单的包装包,帮助您在非 cakePHP 项目(使用 composer)中使用令人惊叹的 cakePHP 的 Hash 类。此辅助类允许您使用 XPath-like 语法操作复杂 PHP 数组。
安装
通过 Composer 安装此包。为此,编辑您的项目 composer.json
文件,以要求 zzal/cakephp-hash
。
"require": {
"zzal/cakephp-hash": "*"
}
然后,在此文件的 "autoload" 部分添加以下内容
"autoload": {
"classmap": [
…
],
"psr-0": {
"CakePHP\\Utility\\": "vendor/zzal/cakephp-hash/Hash"
}
最后,从终端使用 Composer
composer install
基本用法
由于 Laravel 4 已经有一个名为 Hash 的类,我建议您使用 cakePHP 的 Hash 类并使用别名,如下面的示例(routes.php)所示:
<?php use CakePHP\Utility\Hash as ArrayXPath; Route::get('/', function() { $records = array( array( 'pages' => array( array('id' => 1, 'title' => 'One'), array('id' => 2, 'title' => 'Two'), array('id' => 3, 'title' => 'Three'), ) ) ); $result = ArrayXPath::extract($records, '{n}.pages.{n}[id=2]'); var_dump($result); });
结果将是
array(1) {
[0]=>
array(2) {
["id"]=>
int(2)
["title"]=>
string(3) "Two"
}
}