PHP Common 은 일련의 공통 기능을 포함하는 PHP 라이브러리입니다.
테스트를 실행하려면 다음을 사용하세요.
composer install -v
vendor/bin/phpunit
Packagist에서 PHP Common 찾으세요:
ArrayUtil
사용하려면 이를 가져와야 합니다.
use Northern Common Util ArrayUtil as Arr ;
배열에서 값을 얻으려면 get
사용하세요.
$ a = array (
' foo ' => ' bar '
);
$ value = Arr:: get ( $ a , ' foo ' );
// $value == 'bar'
검색하려는 키가 존재하지 않는 경우 기본값을 지정할 수 있습니다.
$ value = Arr:: get ( $ a , ' baz ' , NULL );
// $value == NULL
배열에서 중첩된 값을 얻으려면 경로를 지정할 수 있습니다.
$ a = array (
' foo ' => array (
' bar ' => array (
' baz ' => 123
)
)
);
$ value = Arr:: get ( $ a , ' foo.bar.baz ' );
// $value == 123
필요한 경우 대체 구분 기호를 사용할 수 있습니다.
$ value = Arr:: getPath ( $ a , ' foo/bar/baz ' , NULL , ' / ' );
// $value == 123
값이나 중첩된 값을 설정하려면 set
메소드를 사용하십시오:
$ a = array ();
Arr:: set ( $ a , ' foo.bar.baz ' , 123 );
// $a = array( 'foo' => array( 'bar' => array( 'baz' => 123 ) ) );
키나 경로가 아직 존재하지 않으면 생성됩니다.
insert
사용하면 경로나 키에 새 값을 생성할 수 있지만 경로는 아직 존재하지 않는 경우에만 생성됩니다.
$ a = array ();
Arr:: set ( $ a , ' foo.bar.baz ' , 123 );
Arr:: insert ( $ a , ' foo.bar.baz ' , 123 );
// The insert statement does nothing.
키나 경로를 삭제할 수도 있습니다.
Arr:: delete ( $ a , ' foo.bar.baz ' );
또는 여러 경로나 키를 한 번에 삭제하려면 다음을 수행하세요.
Arr:: delete ( $ a , array ( ' fum ' , ' foo.bar.baz ' , ' foo.bar.bob ' ) );
또는 대체 구분 기호를 사용하면 다음과 같습니다.
Arr:: delete ( $ a , array ( ' fum ' , ' foo/bar/baz ' , ' foo/bar/bob ' ), ' / ' );
키나 경로가 존재하는지 테스트하려면 다음을 사용하세요.
$ value = Arr:: exists ( $ a , ' foo.bar.baz ' );
// $value == TRUE
배열의 모든 값에 접두사를 붙여야 하는 경우 prefix
메서드를 사용하세요.
$ a = array ( ' 1 ' , ' 2 ' , ' 3 ' );
$ values = Arr:: prefix ( $ a , ' $ ' );
// $values = array('$1', '$2', '$3');
배열의 모든 값을 접미사로 수정해야 하는 경우 postfix
메서드를 사용하세요.
$ a = array ( ' 1 ' , ' 2 ' , ' 3 ' );
$ values = Arr:: postfix ( $ a , ' $ ' );
// $values = array('1$', '2$', '3$');
때로는 배열을 "평면화"해야 하는 경우가 있습니다. 즉, 키와 값을 기호나 문자와 함께 연결해야 합니다.
$ a = array ( ' param1 ' => ' 123 ' , ' param2 ' => ' xyz ' );
$ values = Arr:: flatten ( $ a );
// $values = array('param1=123', 'param2=xyz');
또는 기본 '='와 다른 '접착제' 문자를 사용하세요.
$ values = Arr:: flatten ( $ a , ' | ' );
// $values = array( 'param1|123', 'param2|xyz' );
array_keys
함수와 동일한 방식으로 배열의 키를 반환하지만 keys
사용하면 접두사를 지정할 수 있습니다.
$ a = array ( ' param1 ' => ' 123 ' , ' param2 ' => ' xyz ' );
$ values = Arr:: keys ( $ a , ' & ' );
// $values = array( '¶m1', '¶m2' )
array_values
함수가 작동하는 것과 동일한 방식으로 배열의 값을 반환합니다. 그러나 values
하면 접두사를 지정할 수 있습니다.
$ a = array ( ' param1 ' => ' 123 ' , ' param2 ' => ' xyz ' );
$ values = Arr:: values ( $ a , ' & ' );
// $values = array( '&123', '&xyz' )
한 배열의 값이 다른 배열에 존재하는지 테스트합니다. 예:
$ b = Arr:: contains ( array ( ' A ' , ' B ' ), array ( ' A ' , ' B ' , ' C ' ) );
// $b = TRUE
위의 테스트에서는 첫 번째 배열(바늘)의 값이 두 번째 배열(haystack)에 존재하는지 테스트합니다. 위의 예에서는 true입니다.
배열에서 값을 반환하고 배열의 키를 삭제합니다.
$ a = array (
' foo ' => ' bar '
);
$ value = Arr:: extract ( $ a , ' foo ' );
// $value == 'bar'
// $a = array()
위의 예에서는 배열에서 foo
의 값을 반환하고 배열에서 foo
키를 삭제합니다.