我的laravel项目中有一个XML文件,我想使用其中的数据,但是似乎没有显示。
对于上下文,这是我下面的XML文件course_navigation.xml
。 Original found here, under the first xml configuration button:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="title">
<blti:title xmlns:blti="namespace2">Course Wanda Fish
<xsl:apply-templates />
</blti:title>
</xsl:template>
<xsl:template match="description">
<blti:description xmlns:blti="namespace2">This tool adds a course navigation link to a page on a fish called "Wanda"
<xsl:apply-templates />
</blti:description>
</xsl:template>
<xsl:template match="extensions">
<blti:extensions xmlns:blti="namespace2" platform="canvas.instructure.com">
<lticm:property xmlns:lticm="namespace3" name="tool_id">course_navigation</lticm:property>
<lticm:property xmlns:lticm="namespace3" name="privacy_level">anonymous</lticm:property>
<lticm:options xmlns:lticm="namespace3" name="course_navigation">
<lticm:property xmlns:lticm="namespace3" name="url">https://www.eduappcenter.com/tool_redirect?url=%2Fimages.html%3Fcustom_fish_name%3Dwanda</lticm:property>
<lticm:property xmlns:lticm="namespace3" name="text">Course Wanda Fish</lticm:property>
</lticm:options>
</blti:extensions>
</xsl:template>
</xsl:stylesheet>
在我的Laravel控制器IndexController.php
中,我使用以下方法像这样简单地获取文件:
private function courseNav() {
$file = simplexml_load_file(storage_path('xml/course_navigation.xml'));
print_r($file);
return $file;
}
然后我用var_dump($file)
和dd($file)
进行测试
var_dump
返回以下结果:
/home/vagrant/myFolder/myProject/app/Http/Controllers/IndexController.php:131:
object(SimpleXMLElement)[252]
public '@attributes' =>
array (size=1)
'version' => string '1.0' (length=3)
dd($file)
的读法如下:
SimpleXMLElement {#252 ▼
+"@attributes": array:1 [▼
"version" => "1.0"
]
}
简而言之,在整个XML文件中,仅显示了属性-而不是我想要的.xml文件的其余部分。而且我不明白为什么。过去的XML文件运行良好,所以我想知道这是否是我配置的方式
有人可以告诉我我在做什么错吗?我不确定,我在这里找不到关于此问题的任何问题。