2010-09-16 60 views
1

我得到了这个蹩脚的网站,我需要解析和html元素,我需要获取包含“”符号的内容。这个页面的实际HTML看起来像这样:用PHP分隔字符串 - 与PHP的符号不起作用?

<td>Mais-Lauch-R&ouml;sti <font color=#000000 size=1>(1,2,9,11)</font> mit Paprikasauce <font color=#000000 size=1>(3,9)</font><nobr><b> 2,10 &euro;</b></nobr><br/>........ 

所以我使用DOM来获取元素的内容。不幸的是,这最终如下面的代码(通过的var_dump()):

string(270) "Mais-Lauch-Rösti (1,2,9,11) mit Paprikasauce (3,9) 2,10 €......... 

(DOM似乎使用某事像$td->item(0)->nodeValue;时去除所有包含的标记)

所以&euro;被解析以 - 细。但是当我尝试拆分字符串(实际上是长于贴摘录一点)由€-symbol使用

$data = explode("€", $data); 

将无法​​正常工作。 explode()只是不会检测到€符号。我试图通过“&欧元”分裂,但这也不起作用。我也使用str_replace()函数和的preg_replace()尝试 - 但没有人会承认符号:(

我失去的东西我在做什么错

+2

啊 - 顺便说一句: xenonite 2010-09-16 22:23:40

+1

嗯,照顾给网站的网址?会解决很多字符集的问题 - 猜测了很多:) – Wrikken 2010-09-16 23:12:18

+0

它的一个asp网站:http:// www。 studentenwerk-aachen.de/essen/speiseplaene.asp选择“diese woche”并选中“alleauswählen”,然后点击“speisepläneanzeigen”。这是我需要解析 – xenonite 2010-09-16 23:43:59

回答

0

用简单的PHP DOM解析器尝试它...它的工作原理:)

3

它仍然在字符串中&euro; - 只是它? 。在浏览器中显示€你需要拆就&euro;代替

+1

引用自己的网站: “€”,但这不会工作要么 – xenonite 2010-09-16 23:42:42

1

$data = explode("&euro;", $data);

+0

这正是我试过 – xenonite 2010-09-16 23:43:06

相关问题