我正在尝试添加数组元素中的每个文本。但我也希望添加文本特定的数组元素。这就是我使用strpos的原因,但是这个错误出现了。Strpos() expects parameter 1 to be string, array given
这是我的密码:
$outline = 'outline/index.html';
$allDivs = [];
$allDivs = $parser->getElementsByTagName('div');
foreach ($allDivs as $div) {
if ($div->getAttribute('class') == 'p-articlelist-content-right') {
if ($div != null) {
$links = $div->getElementsByTagName('a');
if ($links->length > 0) {
$a = $links->item(0);
$link[] = $a->getAttribute('href');
} if(strpos($link, 'https://sumai.tokyu-land.co.jp') === 0) {
foreach($link as $value) {
var_dump($value . $outline);
}
}
}
}
}我在这里错过了什么?有什么想法吗?谢谢。
发布于 2018-10-07 06:54:50
strpos对字符串进行操作,$link是一个数组,因为错误状态。我想这就是你想要的:
if ($links->length > 0) {
$a = $links->item(0);
$linkRef = $a->getAttribute('href');
if (strpos($linkRef, 'https://sumai.tokyu-land.co.jp') === 0) {
// This will only work for urls that end on '/' but fail for example.com/index.html
$linkRef .= $outline;
}
$link[] = $linkRef;
} https://stackoverflow.com/questions/52686122
复制相似问题