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

    Aggiornamento versione php da 5.1 a 5.4 problemi funzione deprecate

    Buon giorno a tutti.
    Tra tutte le funzioni presenti in un file,funzioni.ssi c'è questa:
    Codice PHP:
    function makeClickableLinks($text){        $text html_entity_decode($text);//originale        $text = " ".$text;        /*$text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)',                '<a href="\\1" target=_blank>\\1</a>', $text);        $text = eregi_replace('(((f|ht){1}tps://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)',                '<a href="\\1" target=_blank>\\1</a>', $text);        $text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_\+.~#?&//=]+)',        '\\1<a href="http://\\2" target=_blank>\\2</a>', $text);        $text = eregi_replace('([_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3})',        '<a href="mailto:\\1" target=_blank>\\1</a>', $text);*/                        $text = preg_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)',                '<a href="\\1" target=_blank>\\1</a>', $text);        $text = preg_replace('(((f|ht){1}tps://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)',                '<a href="\\1" target=_blank>\\1</a>', $text);        $text = preg_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_\+.~#?&//=]+)',        '\\1<a href="http://\\2" target=_blank>\\2</a>', $text);        $text = preg_replace('([_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3})',        '<a href="mailto:\\1" target=_blank>\\1</a>', $text);                return $text;} 
    Il problema è che non basta sostituire eregi_replace->preg_replace, come immaginavo da ignorante, ma bensì tutta la costruzione.

    Devo sostituire questa:
    Codice PHP:
    $text eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)',                '<a href="\\1" target=_blank>\\1</a>'$text); 
    con questa
    Codice PHP:
    $text preg_replace(????????); 
    aiutatemi, per favore.
    Grazie come sempre.

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Riformatta il codice per favore, non si capisce niente.

    Visualizza sempre l'anteprima prima di inviare messaggi contenenti codice di cui fai copia/incolla.

    Comuqnue dovrebbe essere chiaro cosa devi passare come parametri

    http://it2.php.net/manual/it/function.preg-replace.php

  3. #3
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Quando ho cambiato versione di php ho avuto anch'io questo problema. Non era con eregi_replace ma con ereg ho sotistuito ereg con mb_ereg ed il gioco era fatto. Forse puoi fare la stessa cosa. Se devi usare preg devi rifare tutte le espressioni quindi a mio parere vale la pena provare la sostituzione.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Il pattern delle espressioni regolari non cambia, non dipende dalla funzione che usi, cambiano solo i parametri che devi passare alle funzioni, quindi non ci vedo una grossa difficlotà.

  5. #5
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    Il pattern delle espressioni regolari non cambia, non dipende dalla funzione che usi, cambiano solo i parametri che devi passare alle funzioni, quindi non ci vedo una grossa difficlotà.
    http://php.net/manual/it/reference.p...tern.posix.php
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  6. #6
    ok vi ringrazio, vi farò sapere com'è andata
    Buon week-end

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.