Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> str_replace, zamiana w plikach, tabulatory i nowe linie
daris
post
Post #1





Grupa: Zarejestrowani
Postów: 78
Pomógł: 4
Dołączył: 7.01.2008

Ostrzeżenie: (0%)
-----


Mam taki sktypt:
  1. <?php
  2. if (strpos($file, $find) != false)
  3.  $file = str_replace($find, $code, $file);
  4. else
  5.  $error = $lang['Text not found'];
  6. ?>

który dokonuje zamiany tekstu ($find) na inny ($code) w otwartym pliku ($file). I teraz wszystko działa dobrze dopóki w tekście do znalezienia ($find) nie znajdą się nowe linie (w sumie to nie wiem czy problemem są nowe linie czy tabulatory). "Wyechowanie" tego tekstu w <pre> pokazuje wszystkie linie i tabulatory normalnie. Do wczytywania pliku używam file_get_contents a do zapisywania file_put_contents.

edit: Dopiero teraz się przyjrzałem i dochodzę do wniosku że to jednak nie str_replace może być powodem a raczej strpos, bo wyrzuca tego errora że tekst nie znaleziony (czyli idzie przez "else" (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ).

Ten post edytował daris 3.02.2008, 17:01:53
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
daris
post
Post #2





Grupa: Zarejestrowani
Postów: 78
Pomógł: 4
Dołączył: 7.01.2008

Ostrzeżenie: (0%)
-----


To że jak pisałem wyżej jeśli $find ma więcej niż jedną linię to zamiast przejść przez if'a to przechodzi przez else (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

A tabulatory mogą mieć coś z tym wspólnego bo plikiem ($file) jest skrypt php (z wcięciami)

A i jeszcze zapomniałem dodać że przed zamienieniem trim'uje $find'a (bo ma na początku i na końcu pustą linię)

Ten post edytował daris 3.02.2008, 17:23:11
Go to the top of the page
+Quote Post
nowotny
post
Post #3





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

Ostrzeżenie: (0%)
-----


Cytat(daris @ 3.02.2008, 17:11:02 ) *
To że jak pisałem wyżej jeśli $find ma więcej niż jedną linię to zamiast przejść przez if'a to przechodzi przez else (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

To nie jest odpowiedź na poziomie kodera php, no ale niech będzie... (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Tak bez sczegółów trudno powiedzieć... spróbuj użyć '!==' zamiast '!='... zapodaj też wartości zmiennych $file i $find...
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 6.10.2025 - 04:05