Skip to content

z-song/array_ext

Repository files navigation

#array_ext 一些php数组操作函数

Installing/Configuring

phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install

Then add

extension="array_ext.so"

to your php.ini

#Usage

###array_split()

$arr=[1,3,4,5,6,34,67];
$res=array_split($arr, 3);
print_r($res);
/*outputs:
Array
(
    [0] => Array
        (
            [0] => 1
            [1] => 3
            [2] => 4
        )
    [1] => Array
        (
            [0] => 5
            [1] => 6
            [2] => 34
        )
    [2] => Array
        (
            [0] => 67
        )
)
*/

###array_column()

$arr=[
	['name'=>'bar','age'=>34],
	['name'=>'foo','age'=>17],
	['name'=>'tar','age'=>43],
	['name'=>'gas','age'=>23]
];
$res=array_column($arr, 'age');
print_r($res);
/*outputs:
Array
(
    [0] => 34
    [1] => 17
    [2] => 43
    [3] => 23
)
*/

###array_trim()

$res=array_trim([[3,5],3,5,7,5,6,7,8,[3,5]],[3,5]);
print_r($res);
/*outputs:
Array
(
    [1] => 3
    [2] => 5
    [3] => 7
    [4] => 5
    [5] => 6
    [6] => 7
    [7] => 8
)
*/

###array_columnkey()

$arr=[
	['name'=>'hello','age'=>12],
	['name'=>'hello','age'=>13],
	['name'=>'hello','age'=>14],
	['name'=>'hello','age'=>15],
];
$res=array_columnkey($arr,'age');
print_r($res);
/*outputs:
Array
(
    [12] => Array
        (
            [name] => hello
            [age] => 12
        )
    [13] => Array
        (
            [name] => hello
            [age] => 13
        )
    [14] => Array
        (
            [name] => hello
            [age] => 14
        )
    [15] => Array
        (
            [name] => hello
            [age] => 15
        )
*/

###array_delete()

$res=array_delete(['apple', 'banana', 'pear', 'apple'], 'apple');
print_r($res);
/*outputs:
Array
(
    [1] => banana
    [2] => pear
)
*/

###array_udelete()

$res=array_udelete(['apple', 'banana', 'pear', 'apple'], function($val){
		return $val=='banana';
	});
print_r($res);
/*outputs:
Array
(
    [0] => apple
    [2] => pear
    [3] => apple
)
*/

###array_keys_filter()

$arr=['name'=>'bar', 'age'=>23, 'grade'=>4, 'money'=>1234, 'sex'=>true];
$res=array_keys_filter($arr, ['age', 'money', 'sex']);
print_r($res);
/*outputs:
Array
(
    [age] => 23
    [money] => 1234
    [sex] => 1
)
*/

###array_update()

$arr=['name'=>'bar', 'age'=>23, 'grade'=>4, 'money'=>1234, 'sex'=>true];
$res=array_update($arr, ['age'=>15, 'money'=>100, 'sex'=>false]);
print_r($res);
/*outputs:
Array
(
    [name] => bar
    [age] => 15
    [grade] => 4
    [money] => 100
    [sex] => 
)
*/

About

a php extension include some array functions

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages