我这里有一个非常复杂的问题。我先试着用语言解释一下。我在数据库表中插入100个关键字和100个URL,使用名为url_01,url_02,url_03,anchor_01,anchor_02,anchor_03等的字段。
现在我想选择第一个网址/锚点组合,我设法使用array_filter
和array_slice
这样的组合:
$anchor=current(array_filter(array_slice($gig,5)));
$url=current(array_filter(array_slice($gig,105)));
我在第5位切片的原因是因为其他字段应该被忽略,而anchor_01的范围一直到最后的anchor_00,所以在位置105我的url字段开始。这很好用,它在跳过空字段的同时为我提供了url / anchor组合。
我使用current(array_filter)
的原因是因为我想在使用它之后从数据库中删除锚点/ url组合,这允许我在忽略空点的同时取第一个条目,而切片确保我从其他钥匙开始。
但是,当我这样做时,我只考虑如何从数据库中取出它,而不是如何将其删除。
所以我的问题是:有没有办法找出我想删除的那两个而不是其他任何一个?
或者有更好的方法我可以先插入100个url和100个锚点的列表,并确保我总是从数据库中获取一个唯一值,因为每个条目只能使用一次,并且我认为在此之后它会被删除。
答案 0 :(得分:0)
我找到了一个解决方案,我无法删除之前的值,但我可以通过添加这样的计数器来选择正确的字段:
$counting=$gig['count'];
$anchor=current(array_filter(array_slice($gig,6+$counting)));
$url=current(array_filter(array_slice($gig,106+$counting)));
if($server_date>$post_date) {
$add_count=$counting+1;
$sql_date="UPDATE `wp_backlinks` SET count='".$add_count."' WHERE id=".$client_id;
$result = $wpdb->query($sql_date);
} else { echo 'WAIT'; }
轻松修复,我仍然认为有更好的方法可以在PHP中实现这一点吗?