Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 排序简单的html dom数组_Php_Arrays_Sorting_Simple Html Dom - Fatal编程技术网

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 ) {
.
.
.

太棒了,太棒了!我已经做了一整天了,非常感谢。太棒了,太棒了!我已经做了一整天了,非常感谢你。