asi*_*haq 0 php arrays sorting algorithm
我有一组控件,其中包括名称和要首先呈现的控件列表。以下是数组:
$controls [0] = array ("name" => "combobox", array ("countryStore", "center" ) );
$controls [1] = array ("name" => "docBody", array () );
$controls [2] = array ("name" => "top", array ("docBody" ) );
$controls [3] = array ("name" => "button1", array ("formPane" ) );
$controls [4] = array ("name" => "center", array ("docBody" ) );
$controls [5] = array ("name" => "text1", array ("formPane" ) );
$controls [6] = array ("name" => "countryStore", array ("center" ) );
$controls [7] = array ("name" => "formPane", array ("center" ) );
Run Code Online (Sandbox Code Playgroud)
我需要以正确的顺序排列控件数组,以便每当我呈现控件时,所有先决条件控件都已经呈现。
PHP 中是否有任何函数可以对这种关系进行排序?
所需输出
$controls [0] = array ("name" => "docBody", array () );
$controls [1] = array ("name" => "top", array ("docBody" ) );
$controls [2] = array ("name" => "center", array ("docBody" ) );
$controls [3] = array ("name" => "formPane", array ("center" ) );
$controls [4] = array ("name" => "countryStore", array ("center" ) );
$controls [5] = array ("name" => "combobox", array ("countryStore", "center" ) );
$controls [6] = array ("name" => "button1", array ("formPane" ) );
$controls [7] = array ("name" => "text1", array ("formPane" ) );
Run Code Online (Sandbox Code Playgroud)
排序后的代码:
$sortedArray = $SortControls($controls);
foreach ($sortedArray as $control) {
System->getControl($control['name'])->render();
}
Run Code Online (Sandbox Code Playgroud)