Qual è la funzione chiamata per l'escaping di 'php' in php

0

Quindi sto lavorando ad un avvio da root e penso di aver trovato una sezione che posso iniettare php. Il problema è quando iniettare il mio php viene commentato. Sto cercando di capire quale sia la funzione, così posso vedere se c'è un problema ma per la vita di me non riesco a trovarlo perché questi termini sono così ambigui.

Qualcuno conosce la funzione php che prenderà:

<?php echo 'it works'; ?>

e trasformalo in

<-- ?php echo 'it works'; ?-->

    
posta Anthony Russell 25.06.2018 - 21:41
fonte

1 risposta

2

Sono abbastanza sicuro che non esiste una funzione di libreria standard per PHP che lo faccia. Quindi è probabilmente una specie di birra fatta in casa. Ovviamente, è impossibile dire esattamente come appare la funzione senza accesso al codice sorgente o test approfonditi, ma una semplice ipotesi potrebbe essere qualcosa del tipo:

$halfway = str_replace('<', '<-- ', $input);
$result = str_replace('>', '-->', $halfway);

Ma qui c'è un numero illimitato di possibilità. La soluzione migliore è giocarci e vedere se qualcosa di inaspettato è successo.

Un altro consiglio per aggirare questo ... Ho trovato questa piccola nota nel changelog per PHP 7.0.0 in Manuale PHP :

The ASP tags <%, %>, <%=, and the script tag <script language="php"> are removed from PHP.

Quindi, se esegui PHP al di sotto di 7, potresti provare quelli. O solo un semplice <?= .

    
risposta data 25.06.2018 - 22:25
fonte

Leggi altre domande sui tag