Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14

Discussione: Pulire stringa

  1. #1

    Pulire stringa

    Avrei bisogno di pulire questa stringa:

    codice:
    <table> 
    <tr><td> 
    <table>
    <tr><td>User</td><td>Unknown</td></tr>
    <tr><td>Activity</td><td>Altro 1</td></tr>
    <tr><td>Route</td><td></td></tr> 
    <tr><td>Start time</td><td>26/04/2008 16:38:37</td></tr> <tr><td>Duration</td><td>00:20:07.35</td></tr>
    <tr><td>Distance</td><td>6.14 km</td></tr> 
    <tr><td>Speed avg</td><td>18.3 km/h</td></tr>
    <tr><td>Speed max</td><td>71.2 km/h</td></tr>
    <tr><td>Pace avg</td><td>3:16 min/km</td></tr>
    <tr><td>Pace max</td><td>0:50 min/km</td></tr>
    </table>
    </td><td> 
     
    </td></tr>
    </table>
    Quello che voglio che mi esca è SOLO: 71.2 km/h

    Il problema è che ho molte stringhe come questa quindi i dati sono tutti variabili, c'è un modo?

  2. #2
    Ho provato a pulirla dal codice html, dopo ho fatto:

    Codice PHP:
    function correggiFormato($str){ $pos strpos($str'Pace'); if($pos !== false){ return substr($str0$pos 1); } } 
    in questo modo ho tagliato tutto dopo 71 km/h.

    Mi resta solo da eliminare tutto quello prima fino a Max compreso... idee?

  3. #3
    Magari puoi usare la funzione Explode e dargli come parametro speed max.

  4. #4
    Grazie, mi faresti però un esempio? facendo come dici ricevo speed max ma non la variabile che in questo caso è 71 km/h o sbaglio?

  5. #5
    è meglio usare strpos e substr per fare questo lavoro, l'explode dovrebbe fare un sacco di lavoro in più

    Codice PHP:
    $startString '<tr><td>Speed max</td><td>';
    $startPosition strpos($str$startString ) + strlen($startString);
    return 
    substr($str$startPositionstrpos($str'</td></tr>'$startPosition) - $startPosition); 
    non l'ho provato, ma a parte magari qualche piccola correzione sul calcolo della posizione dovrebbe andare

  6. #6
    Ti ringrazio, sono nuovo al php ho provato ma mi da errore...

    cmq ripeto quelo che desidererei fare:

    dal codice nel primo post vorrei estrarre:

    Start time 26/04/2008 16:38:37
    Duration 00:20:07.35
    Distance 6.14 km
    Speed avg 18.3 km/h
    Speed max 71.2 km/h

  7. #7
    Utente di HTML.it L'avatar di Luke70
    Registrato dal
    Jul 1999
    Messaggi
    767
    Beh...
    la richiesta che hai fatto all'inizio non è la stessa che fai in questo ultimo reply.
    Decidi prima di tutto cosa vuoi e poi prova ad usare http://www.php.net/manual/en/function.strip-tags.php

  8. #8
    Si ho dovuto cambiare alcune cose, dovrei ricevere i valori che ho messo nell'ultimo post, non occorre che abbiano anche il nome... per esempio

    Duration 00:20:07.35
    va bene anche solo 00:20:07.35 poi lo associo io ad una variabile

  9. #9
    Utente di HTML.it L'avatar di Luke70
    Registrato dal
    Jul 1999
    Messaggi
    767
    prova a vedere cosa ti esce con strip_tags e vedi se da li, con ad es. un explode, riesci a separare i valori che ti servono

  10. #10
    Ci sto provando...

    con questa funzione:

    Codice PHP:
    function strip_only($str$tags) { if(!is_array($tags)) { $tags = (strpos($str'>') !== false explode('>'str_replace('<'''$tags)) : array($tags)); if(end($tags) == ''array_pop($tags); } foreach($tags as $tag$str preg_replace('#</?'.$tag.'[^>]*>#is'' '$str); return $str; } 
    sono riuscito ad ottenere questo:

    User rmf
    Activity Other Tracking 1
    Route Do\ko
    Start time 18.11.09 06:24
    Duration 43 min 30 s
    Distance 79.25 km
    Speed avg 109.28 km/h
    Speed max 141.48 km/h
    Pace avg 0:33 / km
    Pace max 0:25 / km / km

    come posso fare però fare una cosa tipo:

    $User='rmf';
    $Activity='Other tracking';

    e così via?

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.