The outer loop needs to continue iterating from the index 0 to n – 1( here, n is the number of items). The inner loop starts from the current index + 1 of the outer loop to the end of the list.
function selection_sort( $data_array ){
for( $i=0; $i < count( $data_array ) - 1; $i++ ){
$temp = $data_array[$i];
$min_index = $i;
for( $j=$i+1; $j < count( $data_array ); $j++ ){
if( $data_array[$j] < $data_array[$min_index] ){
$min_index = $j;
}
}
if( $i != $min_index ){
$data_array[$i] = $data_array[$min_index];
$data_array[$min_index] = $temp;
}
}
return $data_array;
}
echo '<h1>Before Sort</h1>';
echo '<pre>';
print_r($data_array);
echo '</pre>';
echo "<br>";
echo '<h1>After Sort</h1>';
$sorted_items = selection_sort( $data_array );
echo '<pre>';
print_r($sorted_items);
echo '</pre>';
Output:

Plugins to Enhance Your WooCommerce Store
Carefully selected tools to help you customize, manage, and optimize your WooCommerce experience.
Woo Parent Category Selector
- Automatically assign parent categories when child categories are selected
- Prevent accidental removal of required parent categories
- Automatically repairs missing parent category assignments during product save
- Bulk repair existing WooCommerce product category structures
- Keeps product category structures organized and consistent
Product Catalog Mode For WooCommerce
- Turn your WooCommerce store into catalog mode instantly
- Hide Add to Cart buttons and product prices conditionally
- Apply rules by user role, country, or scheduled time periods
- Display custom messages and inquiry options for products
- Control visibility settings globally or per product
Remove Add to Cart Button for WooCommerce
- Remove Add to Cart buttons from shop and product pages
- Hide buttons conditionally for selected products or categories
- Replace Add to Cart with custom text or messages
- Control button visibility by user role and product type
- Lightweight settings interface with easy customization
Remove Product Content for WooCommerce
- Hide product title, image, price, rating, and descriptions
- Remove tabs, meta information, SKU, tags, and related products
- Control visibility separately for shop and single product pages
- Customize WooCommerce layouts without coding
- Enable or disable content elements with simple settings
Really Simple XML and HTML Sitemap
- Generate both XML and HTML sitemaps automatically
- Display sitemaps anywhere using ShortCode support
- Include pages, posts, and custom post types
- Exclude selected pages or posts easily
- Supports WPML and Polylang multilingual plugins
