Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: "Wyciąganie" adresu
Forum PHP.pl > Forum > PHP
michalkortas
Witam. Potrzebuję Waszej pomocy.
Mam taki kod:
  1. $kod='<img alt="zdjęcie" border="0" src="images/zdjecie.jpg">';

Ze zmiennej $kod muszę wyciągnąć samą ścieżkę do pliku graficznego, tj. images/zdjecie.jpg - Mógłby ktoś pomóc?
Z góry bardzo dziękuję za zainteresowanie.

PS. Liczba znaków przed src="" może być różna!

Pozdrawiam, Michał
tehaha
Cześć, na tej stronie masz już gotowy kod, który robi dokładnie to co potrzebujesz, a nawet trochę więcej, więc raczej bez kłopotu dostosujesz go do swoich potrzeb, rzuć okiem na 3-cią odpowiedź od góry

http://stackoverflow.com/questions/138313/...-html-using-php
michalkortas
Super, wielkie dzięki za podpowiedź.
Korzystając z tamtejszych porad, napisałem takie coś...
  1. <?php
  2. $html='<img src="images/photo.jpg" alt="Zdjęcie">';
  3. preg_match_all('/(alt|title|src)=("[^"]*")/',$html, $result);
  4. $html = str_replace("\"", "", $result[2][0]);
  5. echo $html;
  6. ?>


Może komuś kiedyś się przyda.
Do zamknięcia, pozdrawiam.
wNogachSpisz
Raczej się nie przyda, bo ten kod nie zadziała we wszystkich przypadkach.
Co jeśli nazwa atrybutu będzie wielkimi literami?
webdice
Cytat(wNogachSpisz @ 21.07.2012, 11:33:50 ) *
Raczej się nie przyda, bo ten kod nie zadziała we wszystkich przypadkach.
Co jeśli nazwa atrybutu będzie wielkimi literami?


To się doda modyfikator i.


EDIT: Nie musisz stosować preg_match_all, skoro wyszukujesz tylko jedną wartość.

  1. preg_match( '#src="([^"]+)"#i', $kod, $result );
michalkortas
Dziękuję bardzo za wskazówki smile.gif
erix
A dlaczego SGML parsujecie pregami? Trochę głupota...

Proponuję phpQuery i wtedy nie ma bata, wszystko przeparsuje.
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.