Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    explode non funziona su testo on line??

    questo codice

    Codice PHP:
    $testo file_get_contents("http://www.indirizzo.php");
    $testo strip_tags$testo ); 
    $testo trim($testo);
    echo (
    $testo); 
    funziona senza problemi, ottengo il testo della pagina HTML generata dalla pagina php, senza tags, ogni singola parola separata da uno spazio

    solo che se poi faccio:

    Codice PHP:
    $txt explode(' ',$testo);
    echo (
    $txt[0]);
    echo (
    $txt[1]);
    echo (
    $txt[2]); 
    non ottengo nulla!

    se copio / incollo l' output di echo($testo) in un file .txt e poi lo leggo con file_get_contents, cioè se faccio:

    Codice PHP:
    $testo file_get_contents("testo.txt");
    $testo strip_tags$testo ); 
    $testo trim($testo);
    echo (
    $testo);
    $txt explode(' ',$testo);
    echo (
    $txt[0]);
    echo (
    $txt[1]);
    echo (
    $txt[2]); 
    explode invece funziona benissimo... :master:

    ma dove è la differenza, se in entrambe le letture (pagina web e file locale) $testo immagazzina gli stessi identici dati e gli outputs generati da echo($testo) sono assolutamente identici??

  2. #2
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308
    La differenza è semplice, Fopen wrappers su php ini settati su off. In pratica non puoi prendere il contenuto da siti esterni a quel modo.
    Ciao

  3. #3
    no, allow_url_fopen = On

    ma scusa, se fosse su off non potrei leggere il testo della pagina , che leggo benissimo....

    una volta immagazzinato il testo nella variabile $testo, che è nella memoria del mio server locale, non capisco perché non possa elaborarlo come voglio sia che il contenuto di $testo provenga dal web o da un file locale.... sempre $testo è.... o no?

  4. #4
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308
    Ciao,
    non avevo mica capito che il testo riuscivi a leggerlo
    Scusa, ho letto un po' troppo di fretta.

    Non funziona explode forse perchè non è presente nessun ' '. Hi provato a cambiare carattere?
    Ciao

  5. #5
    no, no, gli spazi ci sono eccome... anche troppi!!!!!!!!!!!!!!!!!

    vedi che a discutere vengono le idee

    quando faccio echo($text) le singole parole sono separate da un solo spazio... se faccio copia e incolla dell' output in un file di testo, le parole sono separate da un solo spazio: ero convinto che tra una parola e l' altra ci fosse un solo spazio

    però mi dico, facciamo la prova del nove... inserisco nel codice

    $testo= str_replace (" ", "kxk", $testo);

    risultato: UNA MAREA di kxk tra una parola e un altra: non riesco a capire per quale sconosciuto motivo quelli che in realtà sono visualizzati come singoli spazi in realtà sono 20 e più tra una parola e l' altra....

    ora faccio un while finchè non sostituisco tutte gli spazi doppi con degli spazi singoli... dovrebbe funzionare

  6. #6
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308
    http://it.php.net/manual/en/function.preg-replace.php

    Clicca li, guarda l'esempio #5, applicalo e poi rifai la prova con i kxk
    Penso che sià + veloce che un ciclo.
    Ciao

  7. #7
    il codice da te riportato ha funzionato perfettamente

    grazie

  8. #8
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308

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 © 2025 vBulletin Solutions, Inc. All rights reserved.