【发布时间】:2016-01-31 13:56:43
【问题描述】:
我遇到的问题是,我不能将 substr、strpos 等 php 字符串函数与中间点等 HTML 特殊字符一起使用。
我的具体问题:
$tdp = gettexts('TDP: ' , '•' , $complete_info);
给我一个文本片段的函数:
function gettexts ($startst, $endst, $content){
$first_step = explode($startst , $content);
$second_step = explode($endst , $first_step[1]);
$textst= $second_step[0];
return $textst;
}
不起作用。 我该如何解决这个问题?
编辑: 当我用这段代码测试它时它可以工作:
$turbo = gettexts('Turbo: ' , '•' , 'Turbo: 4.70GHz • TDP: 220W • Fertigung: 32nm •');
这是我要读出的页面: http://skinflint.co.uk/intel-core-i7-6700t-cm8066201920202-a1261888.html
这里有一个完整的测试代码。 turbo 频率的结果应该是 3.60(而且我不能使用 Ghz,因为有时它的 Turbo: N/A 我真的很想用这些点来爆炸;)
<?php
$content = file_get_contents('http://geizhals.eu/intel-core-i7-6700t-cm8066201920202-a1261888.html');
$complete_info= strip_tags(gettexts('<div id="gh_proddesc">' ,'Gelistet seit:' , $content));
var_dump($complete_info);
echo '<br><br>';
function gettexts ($startst, $endst, $content){
$first_step = explode($startst , $content);
$second_step = explode($endst , $first_step[1]);
$textst= $second_step[0];
return $textst;
}
echo 'Frequency:'. $frequency = gettexts('Taktfrequenz: ' , 'GHz' , $complete_info);
echo '<br>';
echo 'Turbo-Frequency:'.$turbo = gettexts('Turbo: ' , '•' , $complete_info);
?>
我没有找到允许读取 URL 的代码共享站点,但 http://phpfiddle.org/ 允许(不共享)。
【问题讨论】:
-
你能发一份你的 $complete_info 样本吗?
-
complete_info = 八核:“Vishera” • 节拍频率:4.40GHz,Turbo:4.70GHz • TDP:220W .....
-
在我的回答中添加了工作代码
标签: php html htmlspecialchars