Visualizzazione dei risultati da 1 a 4 su 4

Discussione: [PHP] Strippare un tag

  1. #1

    [PHP] Strippare un tag

    Da una stringa $string devo eliminare i tag <script>

    Il pattern della RegExp funziona regolarmente per JavaScript, ma su PHP mi restituisce l'errore:
    Warning: Unknown modifier '['

    Codice PHP:
    $string preg_replace("/<script[\w\W]*<[\s]*/[\s]*script[\s]*>/i"""$string); 
    ma non mi sembra di aver sbagliato la chiusura delle quadre che delimitano le classi.
    Emanuele DG
    <?php echo "Proverbio zen(d): vivi ogni giorno come se fosse il ".date('d M Y', time()); ?>
    Intellectual property

  2. #2
    Oops...
    Non avevo fatto l'escape dello slash.

    Codice PHP:
    $string preg_replace("/<script[\w\W]*>[\w\W]*<[\s]*\/[\s]*script[\s]*>/i"""$string); 
    È un replace sicuro che prenda le possibili occorrenze?
    Emanuele DG
    <?php echo "Proverbio zen(d): vivi ogni giorno come se fosse il ".date('d M Y', time()); ?>
    Intellectual property

  3. #3
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308
    Ciao,
    non so se può esserti utile ma c'è una funzione di php che fa questo lavoro:
    http://it.php.net/manual/en/function.strip-tags.php

  4. #4
    Originariamente inviato da Razorblade
    Ciao,
    non so se può esserti utile ma c'è una funzione di php che fa questo lavoro:
    http://it.php.net/manual/en/function.strip-tags.php
    Grazie, la conosco, strip_tags() strippa tutti i tag della stringa in argomento, e da PHP 3 accetta un secondo argomento che sono i tag da NON strippare...
    Ma siccome a me serve strippare SOLO i tag "<script ... > ... </script>" non posso passare tutti i restanti tag HTML come allowable_tags, quindi la soluzione con RegExp è l'unica.


    [EDIT]
    Il forum si fuma i backslash, rettifico:

    Codice PHP:
    $string preg_replace("/<script[\\w\\W]*>[\\w\\W]*<[\\s]*\\/[\\s]*script[\\s]*>/i"""$string); 
    (Nei post di sopra fare il quote per avere il codice scritto...)
    [/EDIT]
    Emanuele DG
    <?php echo "Proverbio zen(d): vivi ogni giorno come se fosse il ".date('d M Y', time()); ?>
    Intellectual property

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.