Only the collator (UTF-8 sorted array) works without foreach and with only one value in an array.
But I am using foreach and multiple values in an array.
Here is the code:
<select name="courses">
<?php
$list_courses =
array(
array("course" => "Management",
"value" => "course1",
"emoji" => "test1"),
array("course" => "Éducation Physique",
"value" => "course2",
"emoji" => "test2"),
array("course" => "Électrotechnique",
"value" => "course3",
"emoji" => "test3"),
array("course" => "Géographie",
"value" => "course4",
"emoji" => "test4"),
);
$coll = new Collator('fr_FR');
$coll->sort($list_courses);
foreach ($list_courses as $key => $value)
{
echo ('<option value="' . "$value[value]" . '" data-icon="' . "$value[emoji]" . '">' . "$value[course]" . '</option>');
}
?>
</select>
<label for="courses">Cours</label>
With collator, it is still the same order, but with foreach, then here is the actual behaviour in the output:
Management
Géographie
Éducation Physique
Électromécanique