php简单生成html静态页面代码,php生成html轻易代码

作者: 韦德国际1946国际网址  发布:2019-05-28

**实例一

当管理依附XML应用程序时,开荒者平日索要创立XML编码数据结构。比方,Web中基于用户输入的XML状态模板,服务器请求XML语句,以及依据运维时刻参数的客户响应。
就算XML数据结构的营造比较费时,但万一运用成熟的PHP DOM应用程序接口,1切都会变得轻松明了。本文将向您介绍PHP DOM应用程序接口的珍视功效,演示怎样生成二个不利的XML完整文件并将其保存到磁盘中。
始建文书档案类型声明
貌似来讲,XML注脚放在文档最上部。在PHP中声称11分简约:只需实例化一个DOM文书档案类的对象并给予它2个版本号。查看程序清单A:
程序清单 A

$fileName = md5_filename($rs[0],$rs['z_a'],$rs['filesendid']php简单生成html静态页面代码,php生成html轻易代码实例。);
   $path = get_path($rs['sysa']).$rs['z_a'].'/';
     
   $parent = $_SERVER["DOCUMENT_ROOT"];//substr(getcwd(),0,strrpos(getcwd(),''));  
    
   $filePath = $parent.''.$path;
   $tempLate = str_replace('{path}',path($rs['z_a'],$rs['sysa']),$fileContent);
   $tempLate = str_replace('{htmlAbout}',htmlAbout($rs['z_a'],10,8,0,''),$tempLate);   
   $tempLate = str_replace('{htmlTemplate}',htmlTemplate(0),$tempLate);
   $tempLate = str_replace('{htmlMenu}',htmlMenu($rs['sysa']),$tempLate);
   $tempLate = str_replace('{htmlHelp}',htmlHelp($rs['sysa']),$tempLate);
   $tempLate = str_replace('{htmlNews}',htmlAbout($rs['z_a'],0,8,0,''),$tempLate);
   $tempLate = str_replace('{htmlHot}',htmlAbout($rs['z_a'],0,8,1,''),$tempLate);
   $tempLate = str_replace('{htmlSoure}',htmlTemplate(1),$tempLate);
   $tempLate = str_replace('{htmlTitle}',$rs['title'],$tempLate);
   $tempLate = str_replace('{htmlContent}',$rs['content'],$tempLate);
   $tempLate = str_replace('{description}',$rs['description'],$tempLate);
   $tempLate = str_replace('{keywords}',$rs['keywords'],$tempLate);
   makeHtml($tempLate,$filePath,$fileName);

当处理依赖XML应用先后时,开拓者平日索要树立XML编码数据结构。举个例子,Web中基于用户输入的XML状态模板,服务器请求XML语句,以及基于运营时刻参数的客户响应。
 
    就算XML数据结构的营造相比较费时,但1旦应用成熟的PHP DOM应用程序接口,一切都会变得简单明了。本文达内php培养和磨练老师将向您介绍PHP DOM应用程序接口的显要功用,演示如何生成一个不利的XML完整文件并将其保存到磁盘中。
 
    创造文书档案类型注脚
    一般来说,XML声明放在文书档案最上端。在PHP中申明十二分简单易行:只需实例化八个DOM文书档案类的靶子并给予它二个版本号。查看程序清单A:
    程序清单 A

**原理深入分析:

复制代码 代码如下:

function makeHtml($msgContent,$filePath,$fileName){//生成html文件  
  if(!is_dir($filePath)){@mkdir($filePath);} 
  //die($filePath);   
  $handle = fopen(str_replace('','../',$filePath.$fileName),'w ') or die("can't create file!$fileName");
  fwrite($handle,$msgContent);
  fclose($handle);  
}

 代码如下

当我们塑造数据量大以及走访人数多的网址时屡屡会动用动态生成html静态页面包车型地铁办法,那样做的便宜是用户直接待上访问静态页面,缓慢解决了服务器的承负,又有什么不可对寻觅引擎越发友好,可谓一石二鸟;

<?php
// create doctype
$dom = new DOMDocument("1.0");
// display document in browser as plain text
// display document in browser as plain text
// for readability purposes
header("Content-Type: text/plain");
// save and display tree
echo $dom->saveXML();
?>

本站原创转截注解:www.111cn.net/phper/php.html

    <?php
    // create doctype
    $dom = new DOMDocument("1.0");
    // display document in browser as plain text
    // display document in browser as plain text
    // for readability purposes
    header("Content-Type: text/plain");
    // save and display tree
    echo $dom->saveXML();
    ?>

其规律是先读入模板文件,然后依据一定的平整替换模板中的标签,具体贯彻如下:

请留意DOM文书档案对象的saveXML()方法。稍后自家再详尽介绍那壹主意,未来你只要求轻松认知到它用来出口XML文书档案的当下快速照相到叁个文书或浏览器。在本例,为增长可读性,小编早就将ASCII码文本直接出口至浏览器。在其实使用中,可将以text/XML头文件发送到浏览器。
如在浏览器中查阅输出,你可看到如下代码:
<?xml version="1.0"?>
添日成分和文书节点
XML真正有力的功能是根源其成分与包装的内容。幸运的是,壹旦你初阶化DOM文书档案,多数操作变得很简短。此进程包涵如下两步骤:
对想加多的每1成分或文本节点,通过成分名或文本内容调用DOM文书档案对象的createElement()或createTextNode()方法。那将创造对应于成分或文本节点的新指标。
因而调用节点的appendChild()方法,并把其传递给上一步中开创的靶子,并在XML文书档案树上校成分或文本节点增添到父节点。
以下模范将精晓地示范那二步骤,请查看程序清单B。
程序清单 B

请小心DOM文书档案对象的saveXML()方法。稍后笔者再详尽介绍这1方法,今后你只须求轻巧认知到它用来出口XML文档的当前快速照相到四个文本或浏览器。在本例,为增高可读性,笔者一度将ASCII码文本直接出口至浏览器。在骨子里运用中,可将以text/XML头文件发送到浏览器。
    如在浏览器中查看输出,你可观察如下代码:
    <?xml version="1.0"?>
    添比索素和文件节点
    XML真正有力的机能是源于其成分与包装的剧情。幸运的是,壹旦您初步化DOM文书档案,诸多操作变得异常粗略。此进度包涵如下两步骤:
    对想加多的每一成分或文本节点,通过成分名或文本内容调用DOM文书档案对象的createElement()或createTextNode()方法。那将创制对应于成分或文本节点的新指标。
    通过调用节点的appendChild()方法,并把其传递给上一步中创设的目的,并在XML文书档案树大校成分或文本节点增添到父节点。
    以下楷模将明白地示范那2步骤,请查看程序清单B。

index.tpl 模板文件代码:

复制代码 代码如下:

程序清单 B

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head>  
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
<title>{title}</title>  
</head>  
<body>  
{content}   
</body>  
</html> 

<?php
// create doctype
$dom = new DOMDocument("1.0");
// display document in browser as plain text
// for readability purposes
header("Content-Type: text/plain");
// create root element
$root = $dom->createElement("toppings");
$dom->appendChild($root);
// create child element
$item = $dom->createElement("item");
$root->appendChild($item);
// create text node
$text = $dom->createTextNode("pepperoni");
$item->appendChild($text);
// save and display tree
echo $dom->saveXML();
?>

 代码如下

index.php 服务端代码:

这 里,笔者第二创制三个名字为<toppings>的根成分,并使它归于XML头文件中。然后,笔者创建名称为<item>的因素并使它 归于根成分。最终,小编更创办叁个值为“pepperoni”的文书节点并使它归于<item>成分。最后结果如下:

 <?php
    // create doctype
    $dom = new DOMDocument("1.0");
    // display document in browser as plain text
    // for readability purposes
    header("Content-Type: text/plain");
    // create root element
    $root = $dom->createElement("toppings");
    $dom->appendChild($root);
    // create child element
    $item = $dom->createElement("item");
    $root->appendChild($item);
    // create text node
    $text = $dom->createTextNode("pepperoniwww.111cn.net");
    $item->appendChild($text);
    // save and display tree
    echo $dom->saveXML();
    ?>

<?php   
$data = array('id' => 1, 'title' => '这里是标题', 'content' => '这里是内容');   
$tpl = 'index.tpl';   
$content = file_get_contents($tpl);     //读取模板文件的内容   
$content = str_replace('{title}',$data['title'],$content);  //用具体数据来替换模板标签   
$content = str_replace('{content}',$data['content'],$content);   
file_put_contents($data['id'].'.html',$content);   //将替换后的内容写进html文件中   
?> 

复制代码 代码如下:

此地,作者第一创制二个名称叫<toppings>的根成分,并使它归于XML头文件中。然后,小编建设构造名称叫<item>的要素并使它归于根成分。最终,小编又成立三个值为“pepperoni”的文书节点并使它归于<item>成分。最后结果如下:

那边是从数组中一向读取数据,实际进程中得以将数据库读取的数据保存在数组中,然后用循环的章程实现替换就行了。

<?xml version="1.0"?>
<toppings>
<item>pepperoni</item>
</toppings>

<?xml version="1.0"?>
    <toppings>
    <item>pepperoniwww.111cn.net</item>
    </toppings>

 

万壹你想增添其它一个topping,只需成立其余二个<item>并充裕不相同的内容,如程序清单C所示。
程序清单C

要是您想加多别的二个topping,只需成立其它一个<item>并加上不一样的剧情,如程序清单C所示。
    程序清单C

本文由韦德国际1946发布于韦德国际1946国际网址,转载请注明出处:php简单生成html静态页面代码,php生成html轻易代码

关键词: 韦德国际

上一篇:正则表明式,正则表明式后向引用
下一篇:没有了