E ai pessoal, tudo beleza?  
	Sou novo no Fórum, e já tentei buscar na internet e neste fórum mas não consegui solucionar meu problema.
 
	Gostaria de ordenar os alunos por data de matricula, abaixo está meu código da classe AlunoDAO, tem um método "public function BuscarPessoaNome($Nome = "")" que gostaria que viesse ordenado por data de matrícula. Na classe aluno, tem esse método
 
	 
 
 public function getDataMatricula() {
	        return $this->DataMatricula;
	    }
 
	 
 
	 
 
	 
 
	Como que devo ordenar a lista que irá retornar no método por data de matricula, lembrando que atualmente grava apenas uma string, não está no formato de data;
 
	 
 
	 <?php 
	namespace classes\dao;
	use classes\entidades\Aluno;
 
	class AlunoDAO { 
	    private $NomeSessao; 
	    private $arrAluno; 
	     
	    public function __construct($NomeSessao) { 
	        $this->NomeSessao = $NomeSessao; 
	        if(isset($_SESSION[$this->NomeSessao])) 
	        { 
	            $this->arrAluno = $_SESSION[$this->NomeSessao];/*Se a sessão existir ele atribui ao array*/ 
	        } 
	        else 
	        { 
	            $this->arrAluno = array();/*Se a sessão não existir ele cria o array*/ 
	        } 
	    } 
	     
	    public function __destruct() 
	    { 
	        $_SESSION[$this->NomeSessao] = $this->arrAluno;     
	    } 
	     
	    public function IncluirAluno(Aluno $objAluno) 
	    { 
	        $BuscaCodigoAluno = count($this->arrAluno) - 1; 
	        if($BuscaCodigoAluno < 0)//verifica se já tem algum código cadastrado 
	        { 
	            $Codigo = 1; 
	        } 
	        else 
	        { 
	            $Codigo = end($this->arrAluno); 
	            $Codigo = $Codigo->getCodigo() + 1; 
	        } 
	        $objAluno->setCodigo($Codigo); 
	        $this->arrAluno[] = $objAluno; 
	        return true;         
	    } 
	     
	    public function ExcluirAluno($codigo) {         
	        foreach ($this->arrAluno as $objAluno) 
	        { 
	            if($objAluno->getCodigo() == $codigo) 
	            { 
	                $elemento = array_search($objAluno, $this->arrAluno); 
	                unset($this->arrAluno[$elemento]); 
	            } 
	        } 
	    } 
	     
	    public function AlterarAluno(Aluno $Aluno) { 
	        foreach ($this->arrAluno as $objAluno) 
	        { 
	            if($objAluno->getCodigo() == $Aluno->getCodigo()) 
	            { 
	                $elemento = array_search($objAluno, $this->arrAluno); 
	                $this->arrAluno[$elemento] = $Aluno; 
	            } 
	        } 
	    } 
	     
	    public function cmp($a, $b) { 
	        if ($a->getDataMatricula() == $b->getDataMatricula()) 
	        { 
	            return 0; 
	        }
 
	        return (strtotime($a->getDataMatricula()) < strtotime($b->getDataMatricula())) ? -1 : 1; 
	     
	    } 
	     
	    public function BuscarPessoaNome($Nome = "") 
	    { 
	        if($Nome != "") 
	        { 
	            $arrAlunoFiltrado =  []; 
	            foreach ($this->arrAluno as $objAluno) 
	            { 
	                if($objAluno->getNome() == $Nome) 
	                { 
	                    array_push($arrAlunoFiltrado,$objAluno); 
	                } 
	            } 
	            return ordernarArray($arrAlunoFiltrado); 
	        } 
	        else 
	        { 
	            //return usort($this->arrAluno, array($this, 'cmp')); 
	                 
	            return $this->arrAluno; 
	        } 
	    } 
	     
	    
 
	 
	    public  function ordenarArray($arrAlunoOrdenado) 
	    { 
	         
	         
	         
	        $arrAlunosRetorno = array(); 
	        for($i = 1; $i < count($arrAlunoOrdenado); $i++) 
	        { 
	            if($arrAlunoOrdenado[$i-1]->getDataMatricula() < $arrAlunoOrdenado[$i]->getDataMatricula()) 
	            { 
	                array_push($arrAlunosRetorno, $arrAlunoOrdenado[$i-1]); 
	            } 
	            else 
	            { 
	                array_push($arrAlunosRetorno, $arrAlunoOrdenado[$i]); 
	            } 
	        } 
	        return $arrAlunosRetorno; 
	    }
 
	 
	    public function BuscarPessoaCodigo($Codigo = "") 
	    { 
	            foreach ($this->arrAluno as $objAluno) 
	            { 
	                if($objAluno->getCodigo() == $Codigo) 
	                { 
	                    return $objAluno; 
	                } 
	            } 
	    } 
	}