PHP classificados Array Introdução
Este artigo descreve o PHP unidimensional, matriz bi-dimensional e multi-dimensional método de classificação.
1, uma matriz unidimensional de triagem
um, sorte de essa função para ordenar uma matriz. Quando esta função é o fim de os elementos da matriz será do menor para o maior re-agendadas. Nota: Esta função na matriz dada célula novas chaves. Isto irá remover o nome original chave ao invés de apenas re-order
<? Php array ( "lemon" , "orange" , "banana" , "apple" ) ; $ Frutas = array ( "limao", "laranja", "banana", "maçã"); $fruits ) ; sort ($ frutas); $fruits as $key => $val ) { foreach ($ frutas as $ chave => $ val) ( . $key . "] = " . $val . " \n " ; echo "frutas [". $ key. "] =". $ val. "\ n"; ) ?
O exemplo acima irá imprimir:
# Frutas [0] = maçã
# Frutas [1] = banana
# Frutas [2] = limao
# Frutas [3] = laranja
b, asort - uma espécie de matriz e manter relações de índice. Esta função para ordenar um array, o índice de matriz para manter e unidades associadas. É usado principalmente para aquelas unidades com um muito importante para classificar a matriz.
<? Php array ( "d" => "lemon" , "a" => "orange" , "b" => "banana" , "c" => "apple" ) ; $ Frutas = array ( "d" => "lemon", "a" => "laranja", "b" => "banana", "c" => "maçã"); $fruits ) ; arsort ($ frutas); $fruits as $key => $val ) { foreach ($ frutas as $ chave => $ val) ( = $val \n " ; echo "$ key = $ val \ n"; ) ?
O exemplo acima irá imprimir:
uma laranja =
d = limão
b = banana
c = maçã
2, array multi-dimensional de classificação
<? Php = array ( 'volume' => 67 , 'edition' => 2 ) ; $ Data [] = array edição ( 'volume' => 67, '=> 2); = array ( 'volume' => 86 , 'edition' => 1 ) ; $ Data [] = array edição ( 'volume' => 86, '=> 1); = array ( 'volume' => 85 , 'edition' => 6 ) ; $ Data [] = array edição ( 'volume' => 85, '=> 6); = array ( 'volume' => 98 , 'edition' => 2 ) ; $ Data [] = array (edição 'volume' => 98, '=> 2); = array ( 'volume' => 86 , 'edition' => 6 ) ; $ Data [] = array edição ( 'volume' => 86, '=> 6); = array ( 'volume' => 67 , 'edition' => 7 ) ; $ Data [] = array edição ( 'volume' => 67, '=> 7); ?
Neste caso, será por ordem decrescente de volume, a edição em ordem crescente
Agora, com uma matriz contendo linhas, mas array_multisort () necessidade de incluir uma série de colunas, então use o seguinte código para obter a coluna e, em seguida, classificar
<? Php / / Obter lista de colunas $data as $key => $row ) { foreach ($ dados as $ key => $ row) ( $key ] = $row [ 'volume' ] ; Volume [$ key] = $ row [ 'volume']; $key ] = $row [ 'edition' ] ; Edição [$ key] = $ row [ 'edição']; ) / / Os dados em ordem decrescente de acordo com o volume, de acordo com a edição ordem crescente / / Put $ dados como o último parâmetro para chaves genéricas para classificar $volume , SORT_DESC , $edition , SORT_ASC , $data ) ; array_multisort ($ volume, SORT_DESC, $ edição, SORT_ASC, $ dados); ?
Recolha de dados está agora classificado, e os resultados são os seguintes:
volume | Edição
---+---
98 | 2
86 | 1
86 | 6
85 | 6
67 | 2
67 | 7













Comentários recentes