sexta-feira, 26 de dezembro de 2008

CakePHP - Array Functions

Array : Algumas propriedades
Depois de notar o quanto o uso do compact se tornou freqüente nos meus scripts, resolvi listar algumas funções que julguei úteis. Algumas talvez não apresentem um uso agora.
Exemplos em php.net

array_combine
Cria um novo array a partir de dois já existentes. Usando os valores do primeiro como as chaves e os parâmetros do segundo como os valores.
$a = array('green', 'red', 'yellow');
$b = array('avocado', 'apple', 'banana');
$c = array_combine($a, $b);

Na tela:
Array
(
[green] => avocado
[red] => apple
[yellow] => banana
)

array_chunk
Divide um array em pequenas partes. Separe os dados como se fossem uma lista ou até mesmo monte calendários.
$input_array = array('a', 'b', 'c', 'd', 'e');
print_r(array_chunk($input_array, 2));

Na tela ( valores do array resgatados de 2 em 2) :

Array
(
[0] => Array
(
[0] => a
[1] => b
)

[1] => Array
(
[0] => c
[1] => d
)

[2] => Array
(
[0] => e
)

)

array_diff
Retorna os valores de array1 que não constam em um array2.
$array1 = array("a" => "green", "red", "blue", "red");
$array2 = array("b" => "green", "yellow", "red");
$result = array_diff($array1, $array2);

Na tela ( os valores de array1 ) :

Array
(
[1] => blue
)

Agora fico devendo algumas brincadeiras com o Cake. Senão esse post fica sem propósito.

3 comentários:

Flaviosil disse...

É muito interessante usar o array_chunk para funções de debug também.

Sucesso!
;)

Angéllica Cardozo disse...

é sim! o cake utiliza a estrutura bem parecida com a função própria debug($array)

;)

Daniel Golgher disse...

Oi Angélica!

Parabéns pelo blog, achei ele hj e já li ele inteiro.

Nesta postagem sobre arrays acharia interessante se você colocasse algum recurso do próprio cake para manipular arrays.

O cake tem uma core lib para manipulação de arrays, a documentação dela está disponível em: http://book.cakephp.org/view/640/Set