将多维数组转换为XML,然后使用递归XSLT函数
|
我在PHP中有一个函数,可以从给定路径检索所有目录和文件。这将返回一个数组,如下所示:
array(
\"dirname1\" => array(
\"dirname2\" => array(
\"dirname3\" => array(
\"0\" => \"file1\",
\"1\" => \"file2\",
\"2\" => \"file3\"
),
\"0\" => \"file4\",
\"1\" => \"file5\",
\"2\" => \"file6\",
\"dirname4\" => array(
\"0\" => \"file7\",
\"1\" => \"file8\"
)
),
\"0\" => \"file9\",
\"1\" => \"file10\"
),
\"0\" => \"file11\",
\"1\" => \"file12\",
\"2\" => \"file13\"
);
我最后需要的是一个X1LT和<li />
的多维列表(不知道是否确切地是一个单词),该列表由XSLT 1.0从XML文件生成,例如:
<ul>
<li class=\"dirname\">
dirname1
<ul>
<li class=\"dirname\">
Dirname2
<ul>
<li class=\"dirname\">
Dirname3
<ul>
<li>file1</li>
<li>file2</li>
<li>file3</li>
</ul>
</li>
<li>file4</li>
<li>file5</li>
<li>file6</li>
<li class=\"dirname\">
dirname4
<ul>
<li>file7</li>
<li>file8</li>
</ul>
</li>
</ul>
</li>
<li>file9</li>
<li>file10</li>
</ul>
</li>
<li>file11</li>
<li>file12</li>
<li>file13</li>
</ul>
最后,在每个<li />
中,我需要一个<a />
中的路径,例如:
<li class=\"dirname\"><a href=\"/dirname1\">dirname1</a></li>
<li><a href=\"/dirname1/dirname2/dirname3/file1\">file1</a></li>
<li><a href=\"/dirname1/file9\">file9</a></li>
实际上,我没有需要转换的XML,因为我不知道将其转换为XSLT 1.0的良好结构。我在ѭ5里面有路径。如有必要,我可以使用PHP进行操作,并且可以在PHP是否为目录的情况下进行检测,我们还可以在XML上添加内容以检测ѭ8。
我希望我已提供足够的信息来理解我。
先感谢您!
没有找到相关结果
已邀请:
2 个回复
帆攀缺锯欧
输出:
蜗仓馈
XML / XSL部分 dirs.xml
dirs.xslt
和PHP再次