<?php
// Main content
echo "How to Sort a Multidimensional Array Containing Dates Using the usort Function
";
echo " In PHP development, we often encounter situations where we need to sort a multidimensional array that contains dates.
The usort function offers a flexible way to sort the array using a custom comparison function.
echo "1. Example of a Multidimensional Array
";
echo ""</span></span><span>;<br>
</span><span><span>$data</span></span><span> = [<br>
[</span><span><span>'name'</span></span><span> => </span><span><span>'Alice'</span></span><span>, </span><span><span>'date'</span></span><span> => </span><span><span>'2025-09-20'</span></span><span>],<br>
[</span><span><span>'name'</span></span><span> => </span><span><span>'Bob'</span></span><span>, </span><span><span>'date'</span></span><span> => </span><span><span>'2024-12-15'</span></span><span>],<br>
[</span><span><span>'name'</span></span><span> => </span><span><span>'Charlie'</span></span><span>, </span><span><span>'date'</span></span><span> => </span><span><span>'2025-01-10'</span></span><span>],<br>
];<br>
</span><span><span class="function_ invoke__">print_r</span></span><span>(</span><span><span>$data</span></span><span>);<br>
</span><span><span>echo</span></span><span> </span><span><span>"
";
echo " We can define a comparison function that converts date strings to timestamps and then compares them:2. Sorting Using usort
";
echo "
echo ""</span></span><span>;<br>
</span><span><span class="function_ invoke__">usort</span></span><span>(</span><span><span>$data</span></span><span>, function(</span><span><span>$a</span></span><span>, </span><span><span>$b</span></span><span>) {<br>
</span><span><span>return</span></span><span> </span><span><span class="function_ invoke__">strtotime</span></span><span>(</span><span><span>$a</span></span><span>[</span><span><span>'date'</span></span><span>]) - </span><span><span class="function_ invoke__">strtotime</span></span><span>(</span><span><span>$b</span></span><span>[</span><span><span>'date'</span></span><span>]);<br>
});<br>
</span><span><span class="function_ invoke__">print_r</span></span><span>(</span><span><span>$data</span></span><span>);<br>
</span><span><span>echo</span></span><span> </span><span><span>"";
echo "3. Explanation
";
echo "
echo "4. Sorting in Descending Order
";
echo ""</span></span><span>;<br>
</span><span><span class="function_ invoke__">usort</span></span><span>(</span><span><span>$data</span></span><span>, function(</span><span><span>$a</span></span><span>, </span><span><span>$b</span></span><span>) {<br>
</span><span><span>return</span></span><span> </span><span><span class="function_ invoke__">strtotime</span></span><span>(</span><span><span>$b</span></span><span>[</span><span><span>'date'</span></span><span>]) - </span><span><span class="function_ invoke__">strtotime</span></span><span>(</span><span><span>$a</span></span><span>[</span><span><span>'date'</span></span><span>]);<br>
});<br>
</span><span><span class="function_ invoke__">print_r</span></span><span>(</span><span><span>$data</span></span><span>);<br>
</span><span><span>echo</span></span><span> </span><span><span>"";
echo " With the above method, we can easily sort the date field in a multidimensional array in either ascending or descending order.
?>
<?php
// Footer content (irrelevant to the main content)
echo "Thank you for reading this tutorial, hope it helps you!\n";
echo "Don't forget to follow for more PHP tips and tricks.\n";
?>
This article is well-structured:
The introductory and concluding sections are irrelevant, with the main content enclosed in