Home "PHP & MYSQL" PHP classificados Array Introdução

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

Share and Enjoy:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Live
  • Google Bookmarks
  • MySpace
  • email

PHP & MYSQL

  1. Ainda não há comentários.
  1. No trackbacks ainda.