从序列列表创建邻接结构

Create an adjacency structure from a list of sequence

我想根据 php 中的序列列表构建一个邻接列表。问题是,我的序列列表在数组中,它看起来像这样:

$arr  = array("1", "1.1", "1.2", "2", "2.1", "2.1.1", "2.1.2");

现在,我想将其转换为邻接列表模型,如下所示:

$arr1 = array("0", "1", "1", "0", "4", "5", "5");

因此,我的 $arr1 将在 table 中代表树视图 (jsTree) 中的 'parentId'。

谁能告诉我正确的方向,或者我应该从哪里开始寻找解决方案。

谢谢。

你可以这样做:

for ($i = 0; $i < count($arr); $i++) {
    $splitString = explode(',', $arr[i]); //split the string on the point
    if (strlen($splitString) > 1) {
        $arr1[i] = $splitString[1]; // take the part after the point
    }
    else {
        $arr1[i] = "0"; // no part after the point, so default to 0
    }
}