/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
str_replace("noget tekst", "<?php et scrip~
Fra : Ace


Dato : 11-03-08 20:50

Hejsa.

Er det muligt, at er erstatte noget tekst i en string (via
str_replace) med et andet php-script?

Her ses hvad det er jeg har forsøgt at gøre uden held:
<?php
$GrabURL = "http://url.php/";
$GrabStart = "";
$GrabEnd = "";
$file = fopen("$GrabURL", "r");
$rf = fread($file, 20000);
$grab = eregi("$GrabStart(.*)$GrabEnd", $rf, $printing);
$printing[1] = str_replace("Frk V", "Frk V:<?php
$dom = new DomDocument();
$dom->loadHTMLFile('http://url.php');
$song = $dom->getElementsByTagName('span');
print $song->item(17)->textContent;?>", $printing[1]);
fclose($file);
echo $printing[1];?>

Den ønskede effekt er måske rimelig indlysende, men for lige at
skære det ud i bølgepap, så vil jeg gerne have at hver gang at
kombinationen af tegn Frk V optræder i stringen i det overordnede
php-script, skal det erstattes med Frk V: og så outputtet fra et
andet php-script... men er det overhovedet muligt?... og hvis
ikke hvad kunne jeg så gøre for at opnå det ønskede resultat?

Håber nogen vil bære over med min manglende viden på dette område
og hjælpe mig med mit problem her.

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Johan Holst Nielsen (11-03-2008)
Kommentar
Fra : Johan Holst Nielsen


Dato : 11-03-08 21:04

Ace wrote:
> Hejsa.
>
> Er det muligt, at er erstatte noget tekst i en string (via
> str_replace) med et andet php-script?
>
> Her ses hvad det er jeg har forsøgt at gøre uden held:
> <?php
> $GrabURL = "http://url.php/";
> $GrabStart = "";
> $GrabEnd = "";
> $file = fopen("$GrabURL", "r");
> $rf = fread($file, 20000);
> $grab = eregi("$GrabStart(.*)$GrabEnd", $rf, $printing);
> $printing[1] = str_replace("Frk V", "Frk V:<?php
> $dom = new DomDocument();
> $dom->loadHTMLFile('http://url.php');
> $song = $dom->getElementsByTagName('span');
> print $song->item(17)->textContent;?>", $printing[1]);
> fclose($file);
> echo $printing[1];?>

Den eneste måde det kan fixes på er noget ala

<?php
$GrabURL = "http://url.php/";
$GrabStart = "";
$GrabEnd = "";
$file = fopen("$GrabURL", "r");
$rf = fread($file, 20000);
$grab = eregi("$GrabStart(.*)$GrabEnd", $rf, $printing);
fclose($file);

/* FIND EKSTERN PARAMATER DER SKAL REPLACES MED */
$dom = new DomDocument();
$dom->loadHTMLFile('http://url.php');
$song = $dom->getElementsByTagName('span');
$rt = $song->item(17)->textContent;
/* SLUT */

$printing[1] = str_replace("Frk V", "Frk V:".$rt, $printing[1]);
echo $printing[1];
?>

Det kan dog muligvis være en fordel at lave en strpos() mod $printing[1]
for at tjekke om "Frk V" findes i stregen før man henter parametren ud
der skal replaces med ($rt)

Det vil se noget ala således ud:

<?php
$GrabURL = "http://url.php/";
$GrabStart = "";
$GrabEnd = "";
$file = fopen("$GrabURL", "r");
$rf = fread($file, 20000);
$grab = eregi("$GrabStart(.*)$GrabEnd", $rf, $printing);
fclose($file);

if(strpos($printing[1],'Frk V')!==false) {
/* FIND EKSTERN PARAMATER DER SKAL REPLACES MED */
$dom = new DomDocument();
$dom->loadHTMLFile('http://url.php');
$song = $dom->getElementsByTagName('span');
$rt = $song->item(17)->textContent;
/* SLUT */
$printing[1] = str_replace("Frk V", "Frk V:".$rt, $printing[1]);
}
echo $printing[1];
?>


--
Johan Holst Nielsen
Freelance PHP Developer - http://phpgeek.dk

Ace (11-03-2008)
Kommentar
Fra : Ace


Dato : 11-03-08 21:23

> Johan Holst Nielsen wrote in dk.edb.internet.webdesign.serverside.php:
> Det vil se noget ala således ud:
>
> <?php
> $GrabURL = "http://url.php/";
> $GrabStart = "";
> $GrabEnd = "";
> $file = fopen("$GrabURL", "r");
> $rf = fread($file, 20000);
> $grab = eregi("$GrabStart(.*)$GrabEnd", $rf, $printing);
> fclose($file);
>
> if(strpos($printing[1],'Frk V')!==false) {
> /* FIND EKSTERN PARAMATER DER SKAL REPLACES MED */
> $dom = new DomDocument();
> $dom->loadHTMLFile('http://url.php');
> $song = $dom->getElementsByTagName('span');
> $rt = $song->item(17)->textContent;
> /* SLUT */
> $printing[1] = str_replace("Frk V", "Frk V:".$rt, $printing[1]);
> }
> echo $printing[1];
> ?>

Arh yei, works like a charm :D 1000 tak for hjælpen *thumbs up*

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408924
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste