Nie wiem, czy do końca zrozumiałem Twoje pytanie, ale "rzuć okiem" na to
:
array.php - on-line.
<?php
$input = ["Witam","mam","tablice","zeszyt","dwuwymiarową w PHP.",
"ołówek","Potrzebuję","kredka1","ze zbioru","umieścić na początku."];
// --- Demo ---
// edytor on-line używa PHP_EOL można zmienić na np.: <br>
echo "Orginalna wejściowa tablica".PHP_EOL;
print_r($input).PHP_EOL;
echo PHP_EOL;
echo implode(" ",$input);
echo PHP_EOL.PHP_EOL;
echo "Przefiltrowana wejściowa tablica".PHP_EOL;
$new_input = twojaNazwa($input);
print_r($new_input);
echo PHP_EOL;
echo implode(" ",$new_input);
function twojaNazwa($input) {
$searched = ["ołówek","kredka","zeszyt"];
// Zwraca tablicę słów szukanych (z $searched), które są w $input
$found_searched = array_intersect($input,$searched);
// Wyrzucamy z $searched słowa, które nie zostały znalezione w $input
// i reindeksujemy tablice $found_searched, żeby indeks zaczynał sie od n0, n+1
$clean_found_searched = array_merge(array_intersect($found_searched,$searched));
// Wrzucamy z $input znalezione ($searched), za pomocą $clean_found_searched
// i reindeksujemy nową zawartość tablicy $input
$clean_input = array_merge(array_diff($input,$clean_found_searched));
// Dodajemy na początku nowego $clean_input -> $clean_found_searched
$new_input = array_merge($clean_found_searched,$clean_input);
return $new_input;
}
?>
