Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    267

    Ri-Problema con str_replace

    Salve, tempo fa avevo aperto un post riguardante un problema con str_replace al seguente link: http://forum.html.it/forum/showthrea...hreadid=980569
    Avevo trovato finalmente una soluzione ma oggi questa stessa applicazione mi coinvolge in un altro nuovo problema.
    in pratica sono riuscito a sostituire i caratteri che volevo con questa soluzione:
    $caratteri = array("_", "-", ".jpg");
    $risultato = str_replace($caratteri, "", $filename);


    Quindi nel codice avevo:

    ### Print each result
    $caratteri = array("_", "-", ".jpg");
    foreach($farr as $filename => $date) {
    if($limset <= $filelim) {
    print "<tr><td nowrap>$limset) </td><td><a href=\"$checkdir$filename\">".$risultato = str_replace($caratteri, " ", $filename)." </a> </td><td nowrap>[" . date ("n/j", $date) . "]</td></tr>\n";
    $limset++;
    }
    }
    print "</table>\n";
    } else {
    print "
    There are currently no files to display!
    ";
    }
    ?>

    Adesso mi occorre avere 2 str_replace differenti, uno solo per il link ed uno solo per il testo

    Come posso aggiungere un altro $caratteri = array("_", "-", ".jpg");
    Esempio:
    $caratteri = array("_"); (Questo lo utilizzo per il link)
    $caratteri = array(".jpg"); (Questo lo utilizzo per il testo)

    Nel secondo al posto di $caratteri che nome dovrei dare (per non darmi lo stesso risultato) nel momento di richiamarlo nel testo:
    ".$risultato = str_replace($caratteri , " ", $filename)."

    Prego veramente qualcuno di darmi una mano perchè sono veramente nei casini

  2. #2
    forse non ho ben capito...
    ma non basta $caratteri_01 = array(....)
    Soluzioni Hosting
    http://www.crabservice.com

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    267
    Io devo fare questo:

    $caratteri = array("_"); (questo per il link)
    $caratteri = array(".jpg"); (questo per il testo

    Che poi richiamo qui:


    <a href=articolo.php?p=".$risultato = str_replace($caratteri , "", $filename).">".$risultato = str_replace($caratteri , "", $filename)."<a>



    Solo che in questo modo il risultato è uguale, quindi dovrei modificare il secondo $caratteri.

    Mettendo $caratteri_1 e $caratteri_2 e poi richiamandolo così:



    <a href=articolo.php?p=".$risultato = str_replace($caratteri_1 , "", $filename).">".$risultato = str_replace($caratteri_2 , "", $filename)."<a>



    E' corretta come struttura?

  4. #4
    se hai la necessità di cambiare un solo tipo non occorre un array...



    <a href=articolo.php?p=".$risultato = str_replace("_" , "", $filename).">".$risultato = str_replace(".jpg" , "", $filename)."<a>

    Soluzioni Hosting
    http://www.crabservice.com

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    267
    Nel link che ho messo sopra mi è stato detto che anche se funziona non è corretto (vedi il post) per questo lo volevo fare in questo modo.
    Ma quello che ho scritto sopra è corretta come funzione o no

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    267
    Io l'ho provata e funziona solo che prima di andare avanti volevo semplicemente sapere se da un punto di vista tecnico è corretto farlo così

  7. #7
    non capisco l'accanimento per il 'codice corretto'
    la funzione che usi in come array è la stessa cosa dell'altra...
    è solo più pratica e veloce se devi inserire altre occorrenze o sostituirle ma se provi danno lo stesso risultato...
    Un array("_"); con una sola occorrenza mi sembra un po' sprecato.. però è corretto, così come:

    $carattere = array("_");
    $carattere = "_";

    sono la stessa cosa
    Soluzioni Hosting
    http://www.crabservice.com

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    267
    insisto per il codice corretto perchè devo fare un casino di pagine con questo sistema e non vorrei dopo tutto il lavoro (e ti garantisco che non è poco) dover scoprire di aver sbagliato tutto.
    Io vorrei sapere se è corretto scrivere $caratteri_2 (oppure $caratterialtronome) o se questa funzione deve per correttezza essere scritta $caratteri

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    267
    ma non c'è nessuno che sa darmi una risposta?

  10. #10
    se devi fare molte pagine è più corretto scrivere

    $caratteri = array(0,1,2); perchè come ti dicevo puoi aggiungere o togliere occorrenze senza dover cercare il replace in tutte le pagine

    così come è giusto scrivere
    $caratteri = 0;
    $caratteri_1 = 1;
    $carartteri_2 = 2;
    etc...

    se imposti una variabile puoi sempre modificarne il contenuto e verrà passato a tutte le pagine che comprendono quella variabile...

    $carattere_1 o $caratterealtronome sono la stessa identica cosa... stai solo dichiarando delle variabili dando loro un nome univoco quindi ci puoi mettere quello che ti pare...


    speriamo cmq in un aiuto da un visir del php
    Soluzioni Hosting
    http://www.crabservice.com

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.