benim kod ile sorun var ve umarım bunu anlamaya mümkün birisi. Temel amacı to sort array based on its value (then reindex its numerical key).
i dosya bu örnek var:
$filename = array("index 198.php", "index 192.php", "index 144.php", "index 2.php", "index 1.php", "index 100.php", "index 111.php");
$alloutput = array(); //all of index in array
foreach ($filename as $name) {
preg_match('#(\d+)#', $name, $output); // take only the numerical from file name
array_shift($output); // cleaned. the last code create duplicate numerical in $output,
if (is_array($output)) {
$alloutput = array_merge($alloutput, $output);
}
}
//try to check the type of every value in array
foreach ($alloutput as $output) {
if (is_array($output)) {
echo "array true </br>";
} elseif (is_int($output)) {
echo "integer true </br>";
} elseif (is_string($output)) { //the numerical taken from filename always resuld "string".
echo "string true </br>";
}
}
Bu kodun çıktısı olacak:
Array ( [0] => 198 [1] => 192 [2] => 144 [3] => 2 [4] => 1 [5] => 100 [6] => 111 )
i dizide her çıkış testi var. It's all string (and not numerical) Yani soru tamsayı bu dizeyi değiştirmek için nasıl, yani i can sort it from the lowest into the highest number ?
Bu kodun temel amacı çıkış diziye bu sıralama en yüksek ila olmuştu nerede nasıl?