Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    Prendere il primo valore di una stringa?

    Buon pomeriggio, non riesco a prendere la prima occorrenza di una stringa e splittare il resto.

    In pratica ho questa stringa:
    codice:
    $via = 'via delle Acciaierie';
    Come posso suddividere questo valore in:
    codice:
    $strVia = 'via';
    $restVia = 'delle Acciaierie';
    Non capisco come fare...so proprio negato :berto:

    Grazie mille....

  2. #2
    Se hai la certezza che la parola $via inizi sempre con la parola via
    allora, potresti fare così:


    $via = 'via delle Acciaierie';

    $strVia = substr($via, 0, 3);
    $restVia = substr($via, 4);

    Se invece può iniziare anche con viale

    allora:

    if (substr($via, 0, 5) == "viale")
    {
    $strVia = substr($via, 0, 5);
    $restVia = substr($via, 7);
    }
    else
    {
    $strVia = substr($via, 0, 3);
    $restVia = substr($via, 4);
    }

  3. #3
    Ho sbagliato non è $restVia = substr($via, 7);
    ma $restVia = substr($via, 6);

  4. #4
    quindi in pratica a seconda che sia, (via,viale,contrada,largo,piazza etc etc) devo fare un controllo?

  5. #5
    Prova cosi', e' universale, indipenentemente da quale sia la prima parola:

    codice:
    $stringa = "via delle Acciaierie";
    
    $strVia = substr($stringa, 0, strpos($stringa, " "));
    $restVia = substr($stringa,strlen($strVia) + 1);

  6. #6
    Si, in effetti Darsch2501 ha ragione.
    Ricorda però che come prima istruzione devi fare:

    $via = trim($via);

    così togli eventuali spazi vuoti inutili che vi sono ad inizio e fine stringa.

  7. #7
    ok perfetto, alla grande...
    Ti ringrazio molto gentile...Ciao ciao

  8. #8
    una curiosità, ammettiamo il caso, che l'utente digiti l'indirizzo completo quindi (via delle acciaierie, 54), come posso prendere il numero civico, dato lo script che mi avete postato?

    Grazie ragazzi...

  9. #9
    Utente di HTML.it L'avatar di Il_Drugo
    Registrato dal
    May 2006
    Messaggi
    1,220
    Codice PHP:
    $stringa "via delle Acciaierie, 54";
    $first array_shift(explode(" "trim($stringa)));
    $last array_pop(explode(" "trim($stringa)));
    $num "";
    if(
    $last && $last 9999)
        
    $num $last;
    echo 
    $first." ".$num

  10. #10
    codice:
    $civico = trim(substr($stringa,strpos($stringa, ",") + 1));
    ma presuppone che l'utente scriva il numero civico dopo la virgola...
    altrimenti devi lavorare sul riconoscimento di un intero alla fine della stringa...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.