как передать $ index в значение массива?

$Product = array("aaa","bbb","ccc");
$suppliername = array("S0001","S0002","S0001");
$vals = array_count_values($suppliername);
print_r($suppliername);
print_r($vals);

foreach($Product as $index => $value)
{
if($vals[$index]>1)
{
echo $suppliername[$index]."+++"."Multiple Entries";
// Here i have to get S0001
}
else
{
echo $suppliername[$index]."+++"."Single Entry";
// Here i have to get S0002
}

}

как пройти $index к значению массива? Я пытаюсь проверить, больше ли значение индекса, чем в состоянии if. Как это получить?

2

Решение

С вашим кодом теперь он не может работать, так как ваш print_r($val) результат был:

Array
(
[S0001] => 2
[S0002] => 1
)

Ключ вашего $vals являются результатом вашего $suppliername массив, поэтому попробуйте вот так:

$Product = array("aaa","bbb","ccc");
$suppliername = array("S0001","S0002","S0001");
$vals = array_count_values($suppliername);
print_r($suppliername);
print_r($vals);

foreach($Product as $index => $value)
{
if($vals[$suppliername[$index]]>1)
{
echo $suppliername[$index]."+++"."Multiple Entries";
}
else
{
echo $suppliername[$index]."+++"."Single Entry";
}
}

Результат :

S0001+++Multiple Entries
S0002+++Single Entry
S0001+++Multiple Entries

Это то, что вы ищите?

1

Другие решения

Я не уверен, что хорошо понял, что вы хотели, но здесь он делает то, что вы хотите в результате:

<?php

$Product = array("aaa","bbb","ccc");
$suppliername = array("S0001","S0002","S0001");
$vals = array_count_values($suppliername);
echo "<pre>";
var_dump($suppliername);
echo "</pre>";
echo "<pre>";
var_dump($vals);
echo "</pre>";

foreach($Product as $index => $value)
{
if($index>1)
{
echo "<br />" . $suppliername[$index]."+++"."Multiple Entries";
// Here i have to get S0001
}
else
{
echo "<br />" . $suppliername[$index]."+++"."Single Entry";
// Here i have to get S0002
}

}
-1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector