/ 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
Hvorfor man ikke erstatte \n\n? :S
Fra : Ace


Dato : 06-03-08 15:43

Hejsa.

Total newb her... hvad betyder \n\n i et PHP-script, og hvad er
årsagen til, at jeg ikke kan slette/erstatte det?
Regnede med at jeg kunne gøre som nedenstående:

$printing[1] = str_replace("\n\n", "", $printing[1]);

Men det fucker bare hele scriptet op, så ved ikke hvad jeg lige
skal gøre :´(

Håber nogen kan hjælpe mig.

Ace

--
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

 
 
Rander (06-03-2008)
Kommentar
Fra : Rander


Dato : 06-03-08 15:50

Ace skrev noget i denne stil, den 06-03-2008 15:43:
> Total newb her... hvad betyder \n\n i et PHP-script, og hvad er
> årsagen til, at jeg ikke kan slette/erstatte det?

Det betyder Newline, og indsætter et linieskift i outputtet. "Outputtet"
er i dette tilfælde kildekoden, så \n vil altså ikke indsætte linieskift
på selve websiden, hvis du forstår... \n og <br /> er ikke det samme.

> Regnede med at jeg kunne gøre som nedenstående:
> $printing[1] = str_replace("\n\n", "", $printing[1]);
> Men det fucker bare hele scriptet op, så ved ikke hvad jeg lige
> skal gøre :´(

Det burde du umiddelbart godt kunne, men når det laver ged i det hele
gætter jeg på at variablen bruges igen længere nede. Må vi se lidt mere
af scriptet?

--
Lars Rander ** Pil ikke ved min adresse ** :(){ :&:& };:
http://bamsepetting.dk

Barnet Hansigne Frederiksen er rask, faderen ukendt, da barnet er
uægte. Husmand Peter Rasmussen er gift med moderen. Drengens police
som fulgte er ægtefødt, altså af Camilla, moderen. (Skadesanmeldelse)

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


Dato : 06-03-08 16:01

> Det burde du umiddelbart godt kunne, men når det laver ged i det hele
> gætter jeg på at variablen bruges igen længere nede. Må vi se lidt mere
> af scriptet?

Nå okay linieskift.. cool tak for forklaringen :)

Ja det må du selvfølgelig gerne.
SCRIPT:
<?php
$GrabURL = "http://url.dk";
$GrabStart = "";
$GrabEnd = "";
$file = fopen("$GrabURL", "r");
$rf = fread($file, 20000);
$grab = eregi("$GrabStart(.*)$GrabEnd", $rf, $printing);
$printing[1] = str_replace("\n\n", "", $printing[1]);
fclose($file);
echo $printing[1];
?>

--
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

Martin (07-03-2008)
Kommentar
Fra : Martin


Dato : 07-03-08 00:58

Ace wrote:
>> Det burde du umiddelbart godt kunne, men når det laver ged i det hele
>> gætter jeg på at variablen bruges igen længere nede. Må vi se lidt mere
>> af scriptet?
>
> $printing[1] = str_replace("\n\n", "", $printing[1]);

Måske der er mellemrum imellem \n og \n
for så vil den nemlig ikke tage nogle af dem.

Jeg ville nok bruge preg_replace istedet (eller ereg_replace)

$printing[1] = preg_replace("/\n([ ]{0,1})\n/", "", $printing[1]);
Noget ala dette.

\n([ ]{0,1})\n
Betyder at hvis der mellem 0 og 1 mellemrum imellem \n og \n så skal den
fjerne det.

Peter Brodersen (07-03-2008)
Kommentar
Fra : Peter Brodersen


Dato : 07-03-08 11:32

On Fri, 07 Mar 2008 00:57:43 +0100, Martin <martin@aarhof.invalid> wrote:

>> $printing[1] = str_replace("\n\n", "", $printing[1]);
>
>Måske der er mellemrum imellem \n og \n
>for så vil den nemlig ikke tage nogle af dem.

Hvis der er tale om input fra en brugerudfyldt form, så er det også
sandsynligt, at indholdet er \r\n\r\n og ikke bare \n\n

--
- Peter Brodersen
Kendt fra Internet

Martin (07-03-2008)
Kommentar
Fra : Martin


Dato : 07-03-08 15:00

Peter Brodersen wrote:
> On Fri, 07 Mar 2008 00:57:43 +0100, Martin <martin@aarhof.invalid> wrote:
>
>>> $printing[1] = str_replace("\n\n", "", $printing[1]);
>> Måske der er mellemrum imellem \n og \n
>> for så vil den nemlig ikke tage nogle af dem.
>
> Hvis der er tale om input fra en brugerudfyldt form, så er det også
> sandsynligt, at indholdet er \r\n\r\n og ikke bare \n\n
>

Det selvfølgelig rigtigt

$printing[1] = preg_replace("/(\r)?\n[ ]{0,1}?(\r)?\n/", "", $printing[1]);

Så bliver regexp vidst noget i denne stil :)

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