我试图找到一个示例来从数组中提取选定的字段。 我可以根据键名提取字段就好了,但是在确定如何使用 CFP 从数组中提取值时遇到问题,使用 PHP。
任何帮助将不胜感激。 到目前为止,我非常感谢图书馆已经可用,谢谢大家!
你好,
我想我不明白“从数组中提取值”是什么意思。 如果你能向我澄清你的需要,也许我可以帮助你。
如果您可以根据键名进行操作,您是否尝试过使用 array_flip,以便将值用作数组中的键?
我很抱歉,我没有完全正确地解释。
我有一个条目数组,然后在每个条目中包含一组定义以及另一个数组。 它并不漂亮,可能有更好的方法来解决它,但这是我的解决方法:
$root = $plist->getValue(true);
$entries = $root->get('Entries');
foreach ($entries as $entry) {
$topalias = $entry->get('versions')->getValue();
foreach ($topalias as $subvalue) {
$finalvalue = $subvalue->get('versionAliases')->getValue();
}
$versionalias = $finalvalue;
}
$versionalias 是我从第二层阵列中提取的条目。 再一次,不漂亮,但它奏效了。
感谢您的快速回复,如果有更有效的方法,我很乐意听到。 谢谢!
就今天的 API 而言,没有比您选择的方法更有效的方法了。 就使用$plist
而言。 人们可能会优化循环(除非您真的想要最后一个$finalvalue
的最后一个$entry
)。
也就是说,可以实现类似 xPath / CSS 选择器的方法来在$plist
导航。 可以将您上面的循环内容转换为$versionalias = $plist->find('versions:last/versionAliases:last')->getValue();
我很乐意合并解决此问题的 PR ;)