Newsgroup: it.comp.programmare
Titolo: [PHP] Dividere una stringa ...

Ho cercato in varie
parti, ma non ho trovato nulla.
Come faccio a dividere una stringa in due variabili?
Enrico


Dividere in funzione di cosa... una dimensione costante?? in presenza di un carattere
particolare?? o cosa???
Bye
-- 
Linux Registered User 		#151147
Linux registered Machine 	#66331

 Come faccio a dividere una stringa in due variabili?
se c'e' un separatore particolare carichi i dati in un array, poi lo scrichi
su delle variabili...
dal manuale...
explode -- Split a string by string
Description
array explode (string separator, string string [, int limit])
Returns an array of strings, each of which is a substring of string formed
by splitting it on boundaries formed by the string delim. If limit is set,
the returned array will contaion a maximum of limit elements with the last
element containing the whole rest of string.
Example 1. Explode() example
  1
  2 $pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
  3 $pieces = explode (" ", $pizza);
  4
 Ciao,
                                                      Daniele

Sorry,
il tempo passa veloce e ci si dimentica ....
Il problema e' questo:
Tramite un select option passo una variabile chiamata $DataTipoDataNumerica
e supponiamo abbia come valore 03@2000.
Nella pagina seguente devo dividerla in due variabili distinte
in modo da avere il seguente risultato:
$mese = 01
$anno = 2000
Con la linea $Anno = substr ("$DataTipoDataNumerica", (strrpos
($DataTipoDataNumerica,"@")+1));
ottengo il valore giusto (cioe' $anno=2000).
Come faccio ad ottenere anche il risultato correto anche con il mese ?
Grazie,
Enrico


 mese ?
1) usi explode (come gia' spiegato)
2) siccome si puo' supporre che il mese sia sempre composto da 2 
cifre (01, 02, 03...) basta un
    $Mese = substr ($DataTipoDataNumerica, 0, 2);
3) Altrimenti fai come con anno, trovi la posizione di "@" e 
fai un substr:
   $pos = strrpos ($DataTipoDataNumerica,"@")
   $Mese = substr ($DataTipoDataNumerica, 0, $pos - 1)
(sul $pos - 1 non sono sicuro, fai una prova... :)
Questo sempre nel caso che la stringa inizi con il mese...
Ciao
   Cesare

Come faccio ad ottenere anche il risultato correto anche con il mese ?
usi split
***********
split string into array by regular expression
Description
array split(string pattern, string string, int [limit]);
Returns an array of strings, each of which is a substring of string formed
by splitting it on boundaries formed by pattern. If an error occurs,
returns false. 
To get the first five fields from a line from /etc/passwd: 
Example 1. split() example
$passwd_list = split( ":", $passwd_line, 5 );
***********
HTH
--
Layos [gir n° 19]
"Se piovesse fica mi cadrebbe addosso quella di mia moglie"
[G. Govi sulla fortuna]

 e supponiamo abbia come valore 03@2000.
split()
La prova che nell'universo esistono altre forme di vita intelligente 
e'  che non ci hanno ancora contattato.
--
Michel <ZioBudda> Morelli               
mic...@ziobudda.net
ICQ UIN: 58351764                       PR of PhpItalia.com
http://www.ziobudda.net
 
http://faq.ziobudda.net

Come faccio a dividere una stringa in due variabili?
Dipende, esiste un separatore oppure devi dividerle in base alla loro 
lunghezza?
Ciao
Andrea Busia
-------------------------------------------------------
Redattore e Programmatore di Ludus
http://www.ludus.it
La prima rivista italiana dedicata ai videogiochi,
con recensioni, anteprime, trucchi, soluzioni, ecc.
-------------------------------------------------------