Avatar billede nemlig Forsker
25. december 2020 - 15:26 Der er 1 løsning

str_replace() driller når der angives tekst med linjeskift

Hejsa og glædelig jul.
Jeg har en UTF-8 txt fil, hvor jeg udlæser de første 20 linjer og smider dem i  variablen $allelinjer. Det fungerer fint med :
$file_data = array_slice(file('tool.php'), 0, 20);
$allelinjer = '';
for($i = 0; $i < count($file_data); $i++)
{
    $allelinjer .= $file_data[$i];
}
$allelinjer .= "?>";

Nu kommer min udfordring. Jeg har nogle linjer, som jeg herefter vil fjerne.
Hvis jeg kun søger på tekststrenge i samme linje, så fungerer det fint, men jeg har fx. 4 linjer efter hinanden, som jeg vil fjerne incl. linjeskiftene i enden af linjerne. Jeg markerer de 4 linjer og kopiere dem ind i min str_replace() jf. nedenfor. Men str_replace() fjerner dem ikke. Det er formenligt linjeskiftene, som den ikke fanger korrekt.
$allelinjer = str_replace("require_once('MysqliDb.php');

//Configuration
DEFINE('ENVIRONMENT', 'PROD'); //PROD or DEV","",$allelinjer);

Her er der altså tale om 4 linjer, hvor linje 2 er tom.
Jeg har leget lidt med PHP_EOL og "\n", men uden held.

Nogen forslag til løsning.
Avatar billede nemlig Forsker
25. december 2020 - 16:54 #1
Fandt løsningen.
Linjeskift skal angives med "\r\n".
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





Premium
Dansk hotelplatform efter fem dage langt ransomware-angreb: “Vi har lige fået at vide, at vi har 100 procent recovery på alle data”
Den danske hotelplatform AK Techotel kan efter et fem dage langt ransomware angreb snart få adgang til sin data igen, oplyser selskabet direktør til Computerworld.
CIO
Der findes ikke noget vigtigere for din virksomhedskultur end psychological safety
Klumme: Forskningen er entydig: Vidensarbejde er mere effektiv, når du tør stille spørgsmål, rejse kritik og indrømme fejl helt uden frygt for at blive straffet eller gjort til grin. Hvis du ikke har fokus på denne del af din virksomhedskultur, så lever din virksomhed og dine medarbejdere ikke op til deres fulde potentiale.
White paper
Indbygget sikkerhed i servermiljøet – her er fordelene
Få et samlet og teknisk velfunderet overblik over alle sikkerhedsfeatures i Dells PowerEdge-servere.