Autor | Zpráva | ||
---|---|---|---|
xxxadam577 Profil |
#1 · Zasláno: 4. 7. 2016, 17:11:42
Zdravím, mám problém.
preg_match_all("/<a\s[^>]*href=(\"??)(http[^\" >]*?)\\1[^>]*>(.*)<\/a>/siU", $html, $http); <a href="http://dejepiskmaturite.wz.cz/">Hlavní strana</a> http://dejepiskmaturite.wz.cz/ <a href="/v-tomto-formátu/">
Hodně s tím bojuji. Velmi by mi to pomohlo. |
||
TomášK Profil |
#2 · Zasláno: 4. 7. 2016, 18:20:27
Můžeš zkusit HTML parser, ten je narozdíl od regulárních výrazů určený pro parsování html.
$dokument = new DOMDocument(); $dokument->loadHTMLFile('http://jecas.cz/php-parsovani-html'); $odkazy = $dokument->getElementsByTagName('a'); foreach ($odkazy as $odkaz) { echo $odkaz->getAttribute("href"); } Zdroj: Parsování HTML v PHP |
||
xxxadam577 Profil |
#3 · Zasláno: 4. 7. 2016, 18:34:42
Ahoj, zajímavé, ale rád bych to udělal pomocí preg_match_all. Prosím pomůžeš mi??
|
||
TomášK Profil |
#4 · Zasláno: 4. 7. 2016, 19:45:19
Já ne, považuju to za špatné řešení. Ale někdo jiný hádám ano, na regulární výrazy tu bývá poměrně dost odpovědí.
|
||
xxxadam577 Profil |
#5 · Zasláno: 4. 7. 2016, 19:50:25
Řekněme, že tvé řešení je dobré, ale co když to budu chtít zapsat do DB, ale nejdřiv ten odkaz prokouknout, jestli je tam vše co chci.
|
||
pcmanik Profil |
#6 · Zasláno: 4. 7. 2016, 20:11:43
xxxadam577:
Tak použijes curl a pozrieš sa nie? Kde je problém? O čo sa vlastne snažíš? Uveď prosím celý kontext. |
||
xxxadam577 Profil |
#7 · Zasláno: 4. 7. 2016, 20:20:00
s curl nemám zkušenosti. Verze Toma se mi líbí, ale jak vypsat pouze jeden odkaz???
|
||
pcmanik Profil |
#8 · Zasláno: 4. 7. 2016, 20:43:39
xxxadam577:
$odkazy->item(0)->getAttribute("href"); Používaj dokumentáciu. Toto fórum neslúži ako výučba začiatočníkov. |
||
Časová prodleva: 8 let
|
0