package-of-yii/yii2-helpers 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

package-of-yii/yii2-helpers

最新稳定版本:1.3

Composer 安装命令:

composer require package-of-yii/yii2-helpers

包简介

Collection of useful helper functions for Yii Framework 2.0

README 文档

README

This extension is a collection of useful helper functions for Yii Framework 2.0.

Latest Stable Version Total Downloads License Build Status

Installation

The preferred way to install this extension is through composer.

Either run

php composer.phar require --prefer-dist yii2mod/yii2-helpers "*"

or add

"yii2mod/yii2-helpers": "*"

to the require section of your composer.json file.

Available Methods

  1. add()
  2. average()
  3. collapse()
  4. except()
  5. has()
  6. first()
  7. flatten()
  8. last()
  9. only()
  10. pluck()
  11. prepend()
  12. pull()
  13. set()
  14. sort()
  15. sortRecursive()
  16. where()
  17. xmlStrToArray()

Method Listing

#####add()

Add a given key / value pair to the array if the given key doesn't already exist in the array:

$array = ArrayHelper::add(['card' => 'Visa'], 'price', 200);
// ['card' => 'Visa', 'price' => 200]

#####average()

Get the average value of a given key:

ArrayHelper::average([1, 2, 3, 4, 5]);
// 3

You may also pass a key to the average method:

$array = [
   ['score' => 10],
   ['score' => 30],
   ['score' => 50],
];

ArrayHelper::average($array, 'score');

// 30

#####collapse()

Collapse an array of arrays into a single array:

$array = ArrayHelper::collapse([[1, 2, 3], [4, 5, 6]]);

// [1, 2, 3, 4, 5, 6]

#####except()

Get all of the given array except for a specified array of items:

$array = ['name' => 'Desk', 'price' => 100];

$array = ArrayHelper::except($array, ['price']);

// ['name' => 'Desk']

#####has()

Check if an item exists in an array using "dot" notation:

$array = ['products' => ['desk' => ['price' => 100]]];

$hasDesk = ArrayHelper::has($array, 'products.desk');

// true

#####first()

Return the first element in an array passing a given truth test:

$array = [100, 200, 300];
$value = ArrayHelper::first($array); // 100

// or apply custom callback

$value = ArrayHelper::first($array, function($key, $value) {
      return $value >= 150; // 200
});

#####flatten()

Flatten a multi-dimensional array into a single level:

$array = ['name' => 'Bob', 'languages' => ['PHP', 'Python']];

$array = ArrayHelper::flatten($array);

// ['Bob', 'PHP', 'Python'];

#####last()

Return the last element in an array passing a given truth test:

$array = [100, 200, 300];
$value = ArrayHelper::last($array); // 300

// or apply custom callback

$value = ArrayHelper::last($array, function($key, $value) {
      return $value; // 300
});

#####only()

Get a subset of the items from the given array:

$array = ['name' => 'Desk', 'price' => 100, 'orders' => 10];

$array = ArrayHelper::only($array, ['name', 'price']);

// ['name' => 'Desk', 'price' => 100]

#####prepend()

Push an item onto the beginning of an array:

$array = ['one', 'two', 'three', 'four'];

$array = ArrayHelper::prepend($array, 'zero');

// $array: ['zero', 'one', 'two', 'three', 'four']

#####pluck()

The function retrieves all of the collection values for a given key:

$array = [
   ['product_id' => 'prod-100', 'name' => 'Desk'],
   ['product_id' => 'prod-200', 'name' => 'Chair'],
];


$plucked = ArrayHelper::pluck($array, 'name');

// ['Desk', 'Chair']

You may also specify how you wish the resulting collection to be keyed:

$plucked = ArrayHelper::pluck($array, 'name', 'product_id');

// ['prod-100' => 'Desk', 'prod-200' => 'Chair']

#####pull()

Get a value from the array, and remove it:

$array = ['name' => 'Desk', 'price' => 100];

$name = ArrayHelper::pull($array, 'name');

// $name: Desk

// $array: ['price' => 100]

#####set()

Set an array item to a given value using "dot" notation:

$array = ['products' => ['desk' => ['price' => 100]]];

ArrayHelper::set($array, 'products.desk.price', 200);

// ['products' => ['desk' => ['price' => 200]]]

#####sort()

Sort the array using the given callback:

$array = [
    ['name' => 'Desk'],
    ['name' => 'Chair'],
];

$array = ArrayHelper::sort($array, function ($value) {
    return $value['name'];
});

/*
    [
        ['name' => 'Chair'],
        ['name' => 'Desk'],
    ]
*/

#####sortRecursive()

Recursively sort an array by keys and values:

$array = [
      [
          'Desc',
          'Chair',
      ],
      [
          'PHP',
          'Ruby',
          'JavaScript',
      ],
];

$array = ArrayHelper::sortRecursive($array);
        
/*
  [
      [
         'Chair',
         'Desc',
      ],
      [
         'JavaScript',
         'PHP',
         'Ruby',
      ]
  ];
*/

#####where()

Filter the array using the given Closure.:

$array = ["100", 200, "300"];
$value = ArrayHelper::where($array, function($key, $value) {
   return is_string($value);
});
// Will be return Array ( [0] => 100 [2] => 300 );

#####xmlStrToArray()

Convert xml string to array.

$xml = '<?xml version="1.0"?>
          <root>
            <id>1</id>
            <name>Bob</name>
          </root>';
          
ArrayHelper::xmlStrToArray($xml)

// ['id' => 1, 'name' => 'Bob']

####StringHelper

  • StringHelper::removeStopWords('some text'); - remove stop words from string
  • StringHelper::removePunctuationSymbols('some text'); - Remove punctuation symbols from string

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 6
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-05-15