|
| PHP-processering af en streng? Fra : Morten Poulsen |
Dato : 10-10-02 19:32 |
|
Goddag Alle
Jeg har et problem, som jeg ikke ved om der er en løsning på, men nu spørger
jeg alligevel...
Jeg har et program (altså skrevet i PHP, ikke? Hedder det er program,
eller?), som indlæser en php/html-fil til en streng, fjerner evt.
<head>-information, erstatter nogle links og viser den, med en header som
systemet generer. Det går fint med en html-fil, men hvis den indlæste fil
er en php-fil, er denne jo ikke "nået" at blive PHP-processeret, da mit
program indlæste den som med en file()-kommando. Er der nogen måde, hvorpå
jeg kan PHP-processere den "rettede" version jeg har i min streng? Altså
noget med "process_as_php($streng)" eller sådan noget?
Alternativet er vel at gemme strengen i en temporær-fil og køre noget
"system("php mytemp.php");"-agtigt, men vil det virke?
Håber I kan hjælpe mig...
Mange Hilsener
Morten Poulsen
| |
Jonas Delfs (10-10-2002)
| Kommentar Fra : Jonas Delfs |
Dato : 10-10-02 19:50 |
|
Hej Morten,
"Morten Poulsen" <maillist@poulsen.org> wrote in message
news:ao4h1s$bba$1@news.cybercity.dk...
> Jeg har et program (altså skrevet i PHP, ikke? Hedder det er program,
> eller?),
Et script, ja. :) PHP-kode kan ikke ("rigtigt") kompileres, hvorfor det er
et scriptsprog.
> som indlæser en php/html-fil til en streng, fjerner evt.
> <head>-information, erstatter nogle links og viser den, med en header som
> systemet generer. Det går fint med en html-fil, men hvis den indlæste fil
> er en php-fil, er denne jo ikke "nået" at blive PHP-processeret, da mit
> program indlæste den som med en file()-kommando. Er der nogen måde, hvorpå
> jeg kan PHP-processere den "rettede" version jeg har i min streng?
Det letteste vil vel være at tilgå filen via http, fx.
file(" http://pølser.nu/minFil.php"). Det vil dog også være en anelse
langsommere.
Du kunne også kigge på php.net/eval
--
Mvh./Best Regards
Jonas Delfs, http://delfs.dk
| |
Peter Brodersen (10-10-2002)
| Kommentar Fra : Peter Brodersen |
Dato : 10-10-02 20:37 |
|
On Thu, 10 Oct 2002 20:31:32 +0200, Morten Poulsen
<maillist@poulsen.org> wrote:
>Altså
>noget med "process_as_php($streng)" eller sådan noget?
Hvis jeg har forstået dig korrekt, så er det eval(), du leder efter,
fx:
eval($streng);
Manualen:
http://dk.php.net/manual/en/function.eval.php
Læs manualen grundigt. Overvej situationen grundigt. Hvis du ikke har
100% styr over hvad, $streng indeholder, så kan der forårsages skade
på dit site.
--
- Peter Brodersen
| |
Morten Poulsen (11-10-2002)
| Kommentar Fra : Morten Poulsen |
Dato : 11-10-02 01:44 |
|
Peter Brodersen wrote:
> On Thu, 10 Oct 2002 20:31:32 +0200, Morten Poulsen
> <maillist@poulsen.org> wrote:
>
>>Altså
>>noget med "process_as_php($streng)" eller sådan noget?
>
> Hvis jeg har forstået dig korrekt, så er det eval(), du leder efter,
> fx:
>
> eval($streng);
>
> Manualen:
> http://dk.php.net/manual/en/function.eval.php
Såvidt jeg kan se skal $streng så indeholde 100% php-kode, og det gør den
ikke nødvendigvis, men kan godt indeholde "raw" html-kode. Strengen kunne
f.eks. indholde:
<?
echo "somthing";
?>
<table><tr><td>Something></td></tr></table>
<?
echo "try again">
?>
Og det tror jeg ikke eval "æder"...
Hilsen
Morten
| |
Niels Andersen (11-10-2002)
| Kommentar Fra : Niels Andersen |
Dato : 11-10-02 09:13 |
|
Morten Poulsen wrote in <ao56rd$131d$1@news.cybercity.dk>:
>> eval($streng);
> Såvidt jeg kan se skal $streng så indeholde 100% php-kode, og det gør den
> ikke nødvendigvis, men kan godt indeholde "raw" html-kode.
Det kan den nu sagtens.
Så vidt jeg husker kan du fx. gøre sådan her: eval('?>'.$streng);
--
Mvh.
Niels Andersen
(la nels. anersyn.)
| |
|
|