濮阳杆衣贸易有限公司

主頁 > 網(wǎng)站建設(shè) > 建站知識(shí) > dede5.7中采集視頻站地址的小BUG解決辦法

dede5.7中采集視頻站地址的小BUG解決辦法

POST TIME:2018-03-15 21:19

在采集某視頻網(wǎng)站的時(shí)候,可能會(huì)遇到他的視頻地址源代碼里面的是html代碼,而這html代碼如果是直接放在源代碼里面的話 就會(huì)讓視頻沒法運(yùn)行.... 如圖采集回來的視頻信息

而如果從那邊采集回自己的數(shù)據(jù)庫里面 肯定也會(huì)存html代碼.這樣的話就需要把html和文本之間,本來之前是想在采集的時(shí)候就把他轉(zhuǎn)換成瀏覽器能夠讀出來的文本格式存儲(chǔ).

解決辦法:用dede的Html2Text 這個(gè)function定義的位置(include/inc/inc_fun_funString.php)

{dede:field.body function="Html2Text(@me)"/}可是用這個(gè)函數(shù)之后 重新生成一次 并沒有完全轉(zhuǎn)換. 如圖

<embed src="http://player.ku6.com/refer/6RUW7w0CXg8rI4xo7ywAIw../v.swf" width="480" height="400" allowscriptaccess="always" allowfullscreen="true" type="application/x-shockwave-flash" flashvars="from=ku6"></embed>

而如果視頻想要正常播放 一段正常的代碼是需要< > "(雙引號(hào)不加也可以,個(gè)人覺得加上還是比較好)

打開include/inc/inc_fun_funString.php

找到默認(rèn)的代碼 30行左右

$alltext = str_replace(" "," ",$alltext);
$alltext = preg_replace("/&([^;&]*)(;|&)/","",$alltext);
$alltext = preg_replace("/[ ]+/s"," ",$alltext);

就可以看出 他這里做的操作不是替換,而是等于刪除操作,把html代碼的<>空格都刪除

所以 我們需要做的是 把他們的htmm代碼與文本之間對(duì)應(yīng)起來替換即可.

這三行可以注釋掉 以后可能會(huì)用到 .

替換為如下格式

//全角的空格替代為半角空格
$alltext = str_replace(" "," ",$alltext);
//< 替代為 &lt
$alltext = str_replace("&lt;","<",$alltext);
//> 替代為 &gt
$alltext = str_replace("&quot;","&;",$alltext);
//"替代為&quot;
$alltext = str_replace("&gt;",">",$alltext);
//將所有換行 替代為 <br/>
$alltext = preg_replace("/[ ]{1,}/isU","<br/> ",$alltext);

在需要輸出轉(zhuǎn)換為文本類型的地方把代碼修改一下 用這個(gè)定義好的function即可

例如:{dede:field.body function="Html2Text(@me)"/}/如果用Text2Html則可以逆向操作,舉一反三




收縮
  • 微信客服
  • 微信二維碼
  • 電話咨詢

  • 400-1100-266
华阴市| 衡山县| 沧源| 米泉市| 双江| 阜城县| 高密市| 城固县| 海丰县| 长治县| 嘉鱼县| 和林格尔县| 静安区| 兴文县| 太谷县| 清涧县| 五台县| 咸宁市| 高雄市| 信宜市| 玉门市| 将乐县| 翁源县| 砚山县| 德令哈市| 育儿| 筠连县| 晴隆县| 新闻| 河西区| 平陆县| 平塘县| 绵竹市| 南汇区| 丹凤县| 海兴县| 中山市| 乌兰县| 凉城县| 道孚县| 兴仁县|