Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] fputs() w miejsce znalezione przez strpos()
Forum PHP.pl > Forum > Przedszkole
wujek_bogdan
funkcja strpos() zwraca mi jakąś wartość. czy jest możliwe za pomocą funkcji fputs() umieszczenie właśnie w tym miejscu jakiegoś tekstu? ewentualnie jakiś inny sposób, żeby to osiągnąć
mogę niby użyć preg_replace(), ale ta funkcja zamienia jeden ciąg na drugi, a ja chcę w puste miejsce wstawić tekst.
w skrócie chcę wstawić tekst tam gdzie znajduje się wewnętrzny wskaźnik pliku, czyli gdzieś w środku pliku.

jedynym rozwiązaniem jakie przychodzi mi na myśl jest podzielenie pliku na 2 części. mniejszą od strpos() i większą od strpos().
wrzucenie obu części pliku do 2 zmiennych np. $poczatek i $koniec, następnie połączenie na zasadzie: $poczatek + $moj_tekst_ktory_wstawiam + $koniec

jest jakieś mniej toporne rozwiązanie?
trike
a probowales substr_replace() lub str_replace
wujek_bogdan
ale substr_replace() nadal zastępuje jakiś tekst jakimś innym tekstem, a ja nie chcę zastępować, tylko w określone miejsce wstawić określony tekst.

...moge ewentualnie w miejsce znalezione przez strpos() wstawić spowrotem to co znalazł strpos() + mój_tekst.
trike
ale strpos daje ci tylko miejsce gdzie sie to znajduje a nie tekst czyli bierzesz ta liczbe do funkcji substr_replace

sprobuj tak:
  1. <?php
  2. $nowy_lancuch = substr_replace($oryginal,$tekst_wstawiany,(strpos($oryginal,"szukany ciag")),0)
  3. ?>
wujek_bogdan
wiem, że tak działa strpos(), nie wiedziałem, że można użyć tego co zwraca w funkcji substr_replace()
sądzilem ze mozna tam wstawic tylko string.
dzieki o to wlasnie mi chodzilo.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.