亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > PHP > 正文

用PHP自動把純文本轉換成Web頁面

2024-05-04 21:47:16
字體:
來源:轉載
供稿:網友

  本篇文章的內容。我將告訴你如何使用PHP來快速將純ASCII文本完美地轉換成為可讀的HTML標記。

  首先讓我們來看一個我朋友希望轉換的純文本文件的例子:

  Green for Mars!

  John R. Doe

  The idea of little green men from Mars, long a staple of science fiction, may soon turn out to be less fantasy and more fact.

  Recent samples sent by the latest Mars exploration team indicate a high presence of chlorophyll in the atmosphere. Chlorophyll, you will recall, is what makes plants green. It's quite likely, therefore, that organisms on Mars will have, through continued exposure to the green stuff, developed a greenish tinge on their outer exoskeleton.

  An interview with Dr. Rushel Bunter, the head of ASDA's Mars Colonization Project blah blah...

  What does this mean for you? Well, it means blah blahblah...

  Track follow-ups to this story online at http://www.mars-connect.dom/. To see pictures of the latest samples, log on to http://www.asdamcp.dom/galleries/220/

  相當標準的文本:它有一個標題、一個署名和很多段的文字。把這篇文檔轉換成為HTML真正需要做的是使用HTML的分行和分段標記把原文的布局保留在Web頁面上。特殊的標點符號需要被轉換成為對應的HTML符號,超鏈接需要變得可以點擊。

  下面的PHP代碼(列表A)就會完成上面所有的任務:

  列表A

讓我們來看看它是如何工作的:

以下是引用片段:

<?php

// set source file name and path

$source = "toi200686.txt";

// read raw text as array

$raw = file($source) or die("Cannot read file");

// retrieve first and second lines (title and author)

$slug = array_shift($raw);

$byline = array_shift($raw);

// join remaining data into string

$data = join('', $raw);

// replace special characters with HTML entities

// replace line breaks with <br />

$html = nl2br(htmlspecialchars($data));

// replace multiple spaces with single spaces

$html = preg_replace('/ss+/', ' ', $html);

// replace URLs with <a href...> elements

$html = preg_replace('/s(w+://)(S+)/', ' <a href="" target="_blank"></a>', $html);

// start building output page

// add page header

$output =<<< HEADER

<html>

<head>

<style>

.slug {font-size: 15pt; font-weight: bold}

.byline { font-style: italic }

</style>

</head>

<body>

HEADER;

// add page content

$output .= "<div class='slug'>$slug</div>";

$output .= "<div class='byline'>By $byline</div><p />";

$output .= "<div>$html</div>";

// add page footer

$output .=<<< FOOTER

</body>

</html>

FOOTER;

// display in browser

echo $output;

// AND/OR

// write output to a new .html file

file_put_contents(basename($source, substr($source, strpos($source, '.'))) . ".html", $output) or die("Cannot write file");

?>

  第一步是把純ASCII文件讀取到一個PHP數組里。這通過file()函數很容易就可以完成,這個函數會把文件的每一行都轉換成為一個用數字索引的數組中的元素。

  然后,標題和作者行(我假設這兩個都是文件的前兩行)都通過array_shift()函數從數組里提取出來,放到單獨的變量里。數組剩下的成員然后被連接成一個字符串。這個字符串現在就包括了整篇文章的正文。

  文章正文里像“'”、“<”和“>”這樣的特殊符號通過htmlspecialchars()函數被轉換成相應的HTML符號。為了保留文章的原始格式,分行和分段通過nl2br()函數被轉換成HTML的

元素。文章中間多個空格通過簡單的字符串替換被壓縮成為一個空格。

  文章正文里的URL用正則表達式來檢測,兩邊是元素。當頁面在Web瀏覽器里顯示的時候,它會把URL轉換成為可點擊的超鏈接。

  然后用標準的HTML規則創建輸出的HTML頁面。文章的標題、作者和正文都用CSS樣式規則格式化。盡管這段腳本沒有這樣做,但是你可以在這個地方自定義最終頁面的外觀,你可以向模板添加圖形元素、顏色或者其他眩目的內容。

  一旦HTML頁面構建完成,它就可以被送到瀏覽器或者用file_put_contents()保存為靜態文件。要注意的是,在保存的時候,原來的文件名會被分解,一個新的文件名(叫做filename.html)會為新創建的Web頁面創建。你然后就可以把這個Web頁面發布到Web服務器上、保存到光盤上或者對它進行進一步編輯。

  注意:在使用這個腳本創建和保存HTML文件到磁盤的時候,你要確保這個腳本對文件保存的目錄有寫權限。

  正如你看到的,假如你有標準格式的ASCII純文本數據文件,你可以相當迅速用PHP把它轉換成為可使用的Web頁面。如果你已經有了一個 Web網站,并計劃把新的Web頁面加入進來,那么調試頁面生成器所使用的模板,使之適應原有Web網站的外觀是相當容易的。你自己試試看!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩亚洲精品视频| 亚洲欧美成人网| 茄子视频成人在线| 亚洲娇小xxxx欧美娇小| 日韩在线一区二区三区免费视频| 国产亚洲欧美一区| 久久91超碰青草是什么| 国产精品亚洲激情| 亚洲第一区中文字幕| 亚洲欧美日韩一区在线| 欧美日韩中文字幕综合视频| 欧美一级大片视频| 国产欧美一区二区| 国产在线a不卡| 亚洲肉体裸体xxxx137| 国产欧美日韩精品丝袜高跟鞋| 亚洲国产成人精品久久| 亚洲的天堂在线中文字幕| 亚洲人成免费电影| 国产精品久久国产精品99gif| 91在线高清免费观看| 色黄久久久久久| 欧美性猛交xxxx免费看| 精品在线观看国产| 在线观看免费高清视频97| 亚洲人成在线免费观看| 亚洲一区二区三区视频| 国产精品国产福利国产秒拍| 午夜精品国产精品大乳美女| 8x拔播拔播x8国产精品| 欧美日韩在线一区| 久久精品2019中文字幕| 国产精品video| 欧美电影在线播放| 久久精品视频免费播放| 国产精品电影在线观看| 亚洲免费小视频| 精品成人乱色一区二区| 精品亚洲一区二区三区四区五区| 最近2019中文字幕第三页视频| 国产精品吊钟奶在线| 国产精品成人免费电影| 国产一区二区三区直播精品电影| 精品中文字幕久久久久久| 成人xvideos免费视频| 茄子视频成人在线| 中文字幕日韩欧美在线视频| 91精品国产高清自在线| 亚洲人成啪啪网站| 亚洲人成电影在线播放| 亚洲国产天堂久久综合网| 日韩欧美黄色动漫| 懂色av中文一区二区三区天美| 精品久久久999| 欧美性生交大片免费| 狠狠干狠狠久久| 欧美另类69精品久久久久9999| 国产精品久久国产精品99gif| 欧美精品videos| 成人写真视频福利网| 欧美午夜片欧美片在线观看| 亚洲国产成人在线视频| 国产精品福利在线观看网址| 91av在线免费观看视频| 精品成人在线视频| 久久免费精品日本久久中文字幕| 欧美激情国内偷拍| 欧美日韩一二三四五区| 超碰91人人草人人干| 国产亚洲精品一区二区| 亚洲日本中文字幕免费在线不卡| 国产精品99蜜臀久久不卡二区| 成人a视频在线观看| 欧美—级高清免费播放| 久久精品久久久久电影| 久久99精品久久久久久青青91| 亚洲国产一区二区三区在线观看| 亚洲国产精品小视频| 国产在线拍揄自揄视频不卡99| 欧美性高潮床叫视频| 欧美日韩国产黄| 日韩欧美国产成人| 国产精品久久电影观看| 国语对白做受69| 一区三区二区视频| 97精品免费视频| 日本国产精品视频| 国产精品扒开腿爽爽爽视频| 国产视频999| 色诱女教师一区二区三区| 97久久久免费福利网址| 日韩在线免费高清视频| 久久亚洲精品国产亚洲老地址| 久久精品欧美视频| 久久国产精品偷| 精品久久久香蕉免费精品视频| 亚洲美女动态图120秒| 91亚洲国产成人精品性色| 国产大片精品免费永久看nba| 欧美一乱一性一交一视频| 韩日欧美一区二区| 亚洲激情国产精品| 日韩一区二区av| 国产精品尤物福利片在线观看| 国产精品一区二区3区| 国产一区香蕉久久| 国产不卡一区二区在线播放| 国产日韩在线观看av| 国产精品96久久久久久又黄又硬| 九九热最新视频//这里只有精品| 久久99视频免费| 粉嫩老牛aⅴ一区二区三区| 精品国产1区2区| 亚洲成人激情视频| 尤物yw午夜国产精品视频明星| 成人精品福利视频| 一本色道久久综合狠狠躁篇怎么玩| 久久精品国产69国产精品亚洲| 性欧美办公室18xxxxhd| 日韩免费电影在线观看| 欧美日韩第一视频| 91在线观看免费高清完整版在线观看| 欧美日本中文字幕| 日韩大陆毛片av| 亚洲国产成人在线视频| 亚洲国产精品小视频| 欧美一区二区三区艳史| 久久久久一本一区二区青青蜜月| 国内精品视频在线| 国产欧美在线看| 成人黄在线观看| 国产午夜精品视频| 亚洲xxxxx性| 精品视频在线观看日韩| 亚洲free嫩bbb| 欧美夜福利tv在线| 日韩有码视频在线| 亚洲国产日韩欧美在线99| 国产精品无av码在线观看| 黑人欧美xxxx| 欧美www视频在线观看| 亚洲女人天堂成人av在线| 欧美在线视频网| 亚洲人成网在线播放| 亚洲精品久久久久| 国内精品久久久久久中文字幕| 国产欧美精品日韩精品| 成人黄色免费网站在线观看| 91精品综合久久久久久五月天| 欧美黄色片在线观看| 国产欧美精品日韩| 亚洲欧美综合图区| 日本精品视频在线播放| 亚洲欧美日韩国产精品| 自拍视频国产精品| 欧美一级淫片videoshd| 久久精品在线视频| 日本人成精品视频在线| 91精品久久久久久久久久久| 亚洲码在线观看| 精品久久久国产| 国产91精品青草社区| 国外视频精品毛片| 一本大道久久加勒比香蕉|