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

    Cambiare il delimitatore di default di php

    Ciao a tutti, ho un problema:
    su un sito girano degli script php (con estensione .htm) che hanno una sintassi del genere:
    codice:
    <%
        echo "prova";
    %>  <% echo "inclusione"; %>
    ovvero....in pratica il codice php è racchiuso tra i tag <% e %> e tutto funziona bene.

    Ho installato un nuovo webserver di prova dove vorrei far girare questi script, quindi ho mirrorizzato il tutto e fatto tutto il dovuto per mettere su un server LAMP di base (Ubuntu Linux) però il problema è che non so l'impostazione che mi permetta di far eseguire il codice php contenuto tra i tag <% %>, che viene bellamente ignorato dal parser PHP...e che quindi mi stampa le istruzioni contenute tra i tag <% %> come fosse html liscio...
    Ovviamente ho già impostato il server per parsare il codice php contenuto nei file .htm
    C'è qualcuno che saprebbe consigliarmi cosa fare?
    Ovviamente la soluzione dell'aggiornamento batch di tutti i codici sostituendo i <% con <?php e %> con ?> l'ho già pensata ma è irrealizzabile perchè i file sono milioni
    Grazie anticipatamente!

  2. #2
    hai detto ubuntu linux?
    Beh, guarda...
    man sed
    man grep
    dovrebbero darti una piccola idea che il batch è apposta per cambiare milioni di files...
    Anche perchè cambiare <% con <?php viene molto semplice... Non dovresti avere occorrenze spurie con <%
    Fidati, scriviti un semplice batch e risolvi in pochi secondi (anche se i files sono milioni!!)

    una cosa del genere:
    codice:
    #!/bin/bash
    
    sed s/<%/<?php/g *.*
    sed s/%>/?>/g *.*
    Risolve tanti problemi!

    (è errato, mancano dei pezzi... però ti da l'idea di come usare sed!)

  3. #3
    per farti leggere i file html, puoi usare un file .htaccess con scritto:

    Codice PHP:
    RemoveHandler .html .htm
    AddType application
    /x-httpd-php .php .htm .html 
    per farti leggere <% invece di <?,

    basta che vai nel file php.ini e modifichi, dove vedi:

    codice:
    ; Allow ASP-style <% %> tags.
    asp_tags = Off
    mettendo

    codice:
    asp_tags = On
    Ricordati di riavviare apache, però non ricordo come si faceva in linux

    ...::: DESIDERARE E' UMANO :::...
    ...::: POSSEDERE E' DIVINO :::...
    ...::: HAVE A NICE DAY :::...
    (¯`·.¸¸.->ĐĮ ĦΞŁŁ<-.¸¸.·`¯)
    http://www.djhellclub.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.