XSLT and PHP Views
I just started playing around with XSLT and PHP. However what I can't figure out is, in normal template engine you would normally generate your HTML from at least two templates (the frame and the pag开发者_如何学JAVAe content). The "frame" would only contain the standard page layout
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<!-- Stylesheets etc would go here -->
</head>
<body>
<!-- Content would go here -->
</body>
</html>
while the content would contain the actual data.
What would be the best way to realize that using PHP and XSLT?
Ben
I do it like this:
View.xsl
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:import href="layout.xsl"/>
<xsl:template name="content">
2. View Content
</xsl:template>
<xsl:template match="/">
<xsl:call-template name="layout"/>
</xsl:template>
</xsl:stylesheet>
Layout.xsl
<xsl:template name="jscss"/>
<xsl:template name="layout">
<html>
<head>
<title>layout.xsl</title>
</head>
<body>
1. Layout Content
<xsl:call-template name="content" />
3. Layout Content
</body>
</html>
</xsl:template>
Transform View.xsl and you get:
1. Layout Content
2. View Content
3. Layout Content
I think you are not using XSLT for what you should. XSLT transforms some data into something else. You might want to take a look at some template engines like PHP Smarty before and clarify yourself about where each other stands on the technology stack.
精彩评论