[PHP] Array Associativo Numerico

Versione Completa   Stampa   Cerca   Utenti   Iscriviti     Condividi : FacebookTwitter
-Tonia-
00giovedì 21 febbraio 2008 04:09
Ciao a tutti, avrei una domanda da porre a coloro i quali masticano bene il php.

Avendo un Array Associativo del tipo seguente,
$numeri = array("$a" => "34", "$b" => "65", "$c" => "36", "$d" => "86", "$e" => "22", "$f" => "981", "$g" => "44", "$h" => "24", "$i" => "82", "$l" => "33");

come faccio ad estrarre automaticamente, dall'array associativo, il valore numerico più alto, cioè [$f => "981"]?
Se gli elementi dell'array fossero centinaia e centinaia, come fare a ricavare il valore numerico più grande, in una botta sola?

Esiste una funzione adatta?

Grazie per le delucidazioni.
Leoclone
00sabato 23 febbraio 2008 10:14
Re:
-Tonia-, 21/02/2008 4.09:

Ciao a tutti, avrei una domanda da porre a coloro i quali masticano bene il php.

Avendo un Array Associativo del tipo seguente,
$numeri = array("$a" => "34", "$b" => "65", "$c" => "36", "$d" => "86", "$e" => "22", "$f" => "981", "$g" => "44", "$h" => "24", "$i" => "82", "$l" => "33");

come faccio ad estrarre automaticamente, dall'array associativo, il valore numerico più alto, cioè [$f => "981"]?
Se gli elementi dell'array fossero centinaia e centinaia, come fare a ricavare il valore numerico più grande, in una botta sola?

Esiste una funzione adatta?

Grazie per le delucidazioni.




penso che la funzione appropriata a prima vista possa essere imposta dalla funzione array_keys integrata in PHP ed è un normale array a indice numerico. All'interno del ciclo disponi dunque di ogni indice nella variabile $chiave da utilizzare per visualizzarne il valore relativo. penso che tu voglia creare una chiave per la visualizzazzione di una rubbrica o simile ... non sempre le array sono neceesarie ma se le usi gli array associativi possono essere ciclati in modo da visualizzare tutti i valori importante sapere a quale chiave è associato il valore
es:
<?php
foreach ( array_keys($arr) as $chiave ) {
echo $chiave.': '.$arr[$chiave].'<br />';
}
?>
esempio di utilizzazzione di un ciclo "foreach" per ciclare l'array delle chiavi indice utilizzate in $arr.

penso quindi che l'estrazione automatica della funzione sia attingendo al ciclo array_keys di PHP.

prova e fammi sapere se posso - tempo permettendo - ti linko qualche suggerimento in merito .

ciao
leo [SM=x53912]



aessenet
00domenica 24 febbraio 2008 15:29
Si, poi in generale la soluzione migliore dipende dalla quantità di dati contenuti nell'array, da quanto i dati vengono aggiornati durante la vita della tua applicazione, e da che prestazioni deve avere l'applicazione.

Le due strade di solito sono: tener memorizzato da qualche parte il valore più alto (e aggiornarlo ogni volta che viene inserito nell'array un nuovo elemento), oppure non memorizzarlo da nessuna parte, ed ottenere al volo il valore più alto.

Tieni presente che anche un migliaio di confronti tra interi, fatti una volta ogni tanto, non sono particolarmente pesanti (e di solito, le applicazioni web non hanno requisiti stringenti in termini di tempo d'esecuzione).

-Tonia-
00lunedì 14 aprile 2008 19:13
Re: Re:
Leoclone, 23/02/2008 10.14:




penso che la funzione appropriata a prima vista possa essere imposta dalla funzione array_keys integrata in PHP ed è un normale array a indice numerico. All'interno del ciclo disponi dunque di ogni indice nella variabile $chiave da utilizzare per visualizzarne il valore relativo. penso che tu voglia creare una chiave per la visualizzazzione di una rubbrica o simile ... non sempre le array sono neceesarie ma se le usi gli array associativi possono essere ciclati in modo da visualizzare tutti i valori importante sapere a quale chiave è associato il valore
es:
<?php
foreach ( array_keys($arr) as $chiave ) {
echo $chiave.': '.$arr[$chiave].'<br />';
}
?>
esempio di utilizzazzione di un ciclo "foreach" per ciclare l'array delle chiavi indice utilizzate in $arr.

penso quindi che l'estrazione automatica della funzione sia attingendo al ciclo array_keys di PHP.

prova e fammi sapere se posso - tempo permettendo - ti linko qualche suggerimento in merito .

ciao
leo [SM=x53912]







Leoclone, 23/02/2008 10.14:




penso che la funzione appropriata a prima vista possa essere imposta dalla funzione array_keys integrata in PHP ed è un normale array a indice numerico. All'interno del ciclo disponi dunque di ogni indice nella variabile $chiave da utilizzare per visualizzarne il valore relativo. penso che tu voglia creare una chiave per la visualizzazzione di una rubrica o simile ... non sempre le array sono neceesarie ma se le usi gli array associativi possono essere ciclati in modo da visualizzare tutti i valori importante sapere a quale chiave è associato il valore
es:
<?php
foreach ( array_keys($arr) as $chiave ) {
echo $chiave.': '.$arr[$chiave].'<br />';
}
?>
esempio di utilizzazzione di un ciclo "foreach" per ciclare l'array delle chiavi indice utilizzate in $arr.

penso quindi che l'estrazione automatica della funzione sia attingendo al ciclo array_keys di PHP.

prova e fammi sapere se posso - tempo permettendo - ti linko qualche suggerimento in merito .

ciao
leo [SM=x53912]







Scusate il ritardo nel rispondere ma ho avuto un lutto in famiglia che mi ha allontanato fisicamente e mentalmente dall'informatica...

Riguardo al mio problema ho agito in questa maniera:

in riferimento al seguente array:
$numeri = array("$a" => "34", "$b" => "65", "$c" => "36", "$d" => "86", "$e" => "22", "$f" => "981", "$g" => "44", "$h" => "24", "$i" => "82", "$l" => "33");

l'ho ordinato in modo decrescente per valore e poi ho preso il primo valore che risulta essere quello più grande.

P.S.
Nel caso servisse il valore numerico più piccolo dell'array, posso ordinare l'array stesso in modo crescente, stampando a video sempre il primo valore che in questo caso però, sarà quello più piccolo.
Leoclone
00venerdì 25 aprile 2008 00:01
Re: Re: Re:
-Tonia-, 14/04/2008 19.13:




Scusate il ritardo nel rispondere ma ho avuto un lutto in famiglia che mi ha allontanato fisicamente e mentalmente dall'informatica...

Riguardo al mio problema ho agito in questa maniera:

in riferimento al seguente array:
$numeri = array("$a" => "34", "$b" => "65", "$c" => "36", "$d" => "86", "$e" => "22", "$f" => "981", "$g" => "44", "$h" => "24", "$i" => "82", "$l" => "33");

l'ho ordinato in modo decrescente per valore e poi ho preso il primo valore che risulta essere quello più grande.

P.S.
Nel caso servisse il valore numerico più piccolo dell'array, posso ordinare l'array stesso in modo crescente, stampando a video sempre il primo valore che in questo caso però, sarà quello più piccolo.



direi proprio di si

condoglianze sentite a te e tuoi cari
leo


Questa è la versione 'lo-fi' del Forum Per visualizzare la versione completa clicca qui
Tutti gli orari sono GMT+01:00. Adesso sono le 21:06.
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com