Saturday, May 3, 2014

How to sort a 2 dimensional Array?

I have an array like below:
    [0] => Array
        (
            [name] => product_id
            [sort_order] => 4
        )

    [1] => Array
        (
            [name] => sku
            [sort_order] => 2
        )

    [2] => Array
        (
            [name] => model
            [sort_order] => 1
        )

    [3] => Array
        (
            [name] => ean
            [sort_order] => 3
        )

    [4] => Array
        (
            [name] => jan
            [sort_order] => 6
        )

    [5] => Array
        (
            [name] => mpn
            [sort_order] => 5
        )

I need to sort it on the basis of 'sort_order'. How can I do it? I have come across a solution using function usort. I can write a custom sort function to sort the array.
      usort($arr, function($a, $b) {
                    return $a["sort_order"] - $b["sort_order"];
      }




List of my works:

Opencart Extensions:

  1. Product Based Quantity Wise Shipping: Find it here.
  2. OpenSSLCOMMERZ: integrate SSLCOMMERZ with opencart: Find it here.
  3. Fine Search v.1.0 - Improves Opencart search feature to find relevant: Find it here.
  4. Opensweetcaptcha - An easy way to generate attractive captcha for your system!: Find it here.
  5. Custom Field Product - add unlimited custom fields to the product form: Find it here.
  6. Formcaptcha - add captcha on the register page: Find it here.

My Books:

  1. OpenCart 1.4 Template Design Cookbook.
  2. Joomla Mobile Development Beginners Guide