17

I have an array:

Array ( [0] => 3 [1] => 0 )

I want PHP code that returns 1 because 1's value is the lowest.

How do I do this?

1

4 Answers 4

46

This will return the first index that has the minimum value in the array. It is useful if you only need one index when the array has multiple instances of the minimum value:

$index = array_search(min($my_array), $my_array);

This will return an array of all the indexes that have the minimum value in the array. It is useful if you need all the instances of the minimum value but may be slightly less efficient than the solution above:

$indexes = array_keys($my_array, min($my_array));
Sign up to request clarification or add additional context in comments.

1 Comment

This should be the acceppted answer, because Timothy Clemans asked about the array key.
23
array_keys($array, min($array));

2 Comments

It would be better if you write a little bit more, perhaps what you do and why. Maybe you can also link to an official documentation.
php.net's doc: "… If a search_value is specified, then only the keys for that value are returned …". An array containing "indexes" of matched items would be returned hence.
3

http://php.net/manual/en/function.min.php

http://php.net/manual/en/function.array-search.php

$array = array( [0] => 3, [1] => 0);
$min = min($array);
$index = array_search($min, $array);

Should return 1

Comments

1

The below example would help you.

$values=array(3,0,4,2,1);
$min_value_key=array_keys($values, min($values));
echo $min_value_key;

Hope this helps.

1 Comment

This code does not quite work because $min_value_key is an array, not a string.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.