Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    3

    Match ereg_replace come indice di array

    Salve, ho dei problemi a scrivere un codice che faccia questo:
    Cerca in un testo delle parole racchiuse tra [[]] e le usa come indici di un array associativo per recuperare i valori da sostituire.
    ad esempio
    Codice PHP:
    $arr[titolo]='pagina con replace';

    $pagina='pagina della quale so il [[titolo]] e lo sostituisco';

    $pagina=ereg_replace("\[\[([a-z:0-9]+)\]\]"$arr['\\\\1'], $pagina);
    //mi piacerebbe che prendesse il valore $arr[titolo] e lo sostituisse, ma non funziona 
    come posso fare?
    grazie

  2. #2
    Codice PHP:
    <?php
    $arr
    ['titolo']='pagina con replace';

    $pagina='pagina della quale so il [[titolo]] e lo sostituisco';

    $pagina=preg_replace("#\\[\\[([a-z:0-9]+)\\]\\]#e""\$arr['$1']"$pagina);
    //mi piacerebbe che prendesse il valore $arr[titolo] e lo sostituisse, ma non funziona

    echo $pagina;

    ?>

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    3
    mi dice Compilation failed: unmatched parentheses at offset 13 nella linea della replace...

    edit: ho visto ora che hai editato anche tu..
    funziona.. grazie mille!
    ora dovrò studiare bene le differenze tra ereg e preg..
    grazie ancora

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    3
    e se invece volessi estrarre un valore da un array a due indici?
    diciamo che la stringa è fatta così "indice1:indice2"

    avevo pensato a una soluzione di questo tipo
    Codice PHP:
    $layout=preg_replace("#\\[\\[([a-z:0-9]+)\\: ([a-z:0-9]+)\\]\\]#e""\\$dillo['$1']['$2']"$layout); 
    ma non funziona.

    come posso fare?

    hai una guida da consigliarmi?

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.