Php 排序简单的html dom数组
我已经试着让它工作了一段时间了 我要做的是对两个数组进行排序,以便根据其中一个数组中的值对它们进行排序。我不知道如何“附加”阵列,以便两个阵列都得到订购 这是我的密码:Php 排序简单的html dom数组,php,arrays,sorting,simple-html-dom,Php,Arrays,Sorting,Simple Html Dom,我已经试着让它工作了一段时间了 我要做的是对两个数组进行排序,以便根据其中一个数组中的值对它们进行排序。我不知道如何“附加”阵列,以便两个阵列都得到订购 这是我的密码: $html = file_get_html('http://www.amazon.co.uk/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=hat&x=0&y=0'); $test = strtolower("Beechfield Turn-
$html = file_get_html('http://www.amazon.co.uk/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=hat&x=0&y=0');
$test = strtolower("Beechfield Turn-up Beanie");
$arrayT = array();
$arrayP = array();
foreach ($html->find('div.product') as $results) {
foreach ($results->find('a.title') as $title) {
$titleLow = strtolower($title->plaintext);
similar_text($test, $titleLow, $percent);
$arrayT[] = $title->plaintext;
$arrayP[] = round($percent);
}
}
我正在比较从外部网站带回的标题与变量$test的相似程度,在本例中,这只是一个示例
接下来,我希望根据$percent变量对输出进行排序。例如,如果不进行排序,输出将是:
标题-1 55
标题2 90
标题-3 66
但是,我希望对其进行排序:
标题2 90
标题-3 66
标题-1 55
我尝试过使用array_multisort,但是它只能对每个数组进行独立排序。我也看过usort和ksort,但没有找到有效的答案
任何帮助都将不胜感激!我从未在PHP中使用过任何排序,只是开始学习数组,所以请对我放松。我建议您这样做: 而不是将标题和百分比存储在两个不同的数组中 可以将数组索引作为标题 像这样:
$html = file_get_html('http://www.amazon.co.uk/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=hat&x=0&y=0');
$test = strtolower("Beechfield Turn-up Beanie");
$arrayTP = array();
foreach ($html->find('div.product') as $results) {
foreach ($results->find('a.title') as $title) {
$titleLow = strtolower($title->plaintext);
similar_text($one, $titleLow, $percent);
$arrayTP[$title->plaintext] = round($percent);
}
}
以后可以使用基于百分比的数组排序函数对其进行排序。使用此:。
因为:
此函数用于对数组进行排序,以使数组索引与与其关联的数组元素保持相关性。这主要用于对实际元素顺序重要的关联数组进行排序时
要进行打印,请执行以下操作:
foreach($arrayTP as $title => $percent ) {
.
.
.
我建议您这样做: 而不是将标题和百分比存储在两个不同的数组中 可以将数组索引作为标题 像这样:
$html = file_get_html('http://www.amazon.co.uk/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=hat&x=0&y=0');
$test = strtolower("Beechfield Turn-up Beanie");
$arrayTP = array();
foreach ($html->find('div.product') as $results) {
foreach ($results->find('a.title') as $title) {
$titleLow = strtolower($title->plaintext);
similar_text($one, $titleLow, $percent);
$arrayTP[$title->plaintext] = round($percent);
}
}
以后可以使用基于百分比的数组排序函数对其进行排序。使用此:。
因为:
此函数用于对数组进行排序,以使数组索引与与其关联的数组元素保持相关性。这主要用于对实际元素顺序重要的关联数组进行排序时
要进行打印,请执行以下操作:
foreach($arrayTP as $title => $percent ) {
.
.
.
太棒了,太棒了!我已经做了一整天了,非常感谢。太棒了,太棒了!我已经做了一整天了,非常感谢你。