返回
前端
分类

程序如下,同标签嵌套

日期: 2020-01-25 01:42 浏览次数 : 81

刚开始学PHP,先编写了一个程序,放在自己的主页上,可以显示天气预报,当然还很不完善,希望大家给提意见。程序如下:?$fcont=file();$arr=array();for($i=0;$icount($fcont);$i++){$tmp=$fcont[$i];$tmp=ereg_replace(br, ,$tmp);if(!strstr(strtolower($tmp),img)){$tmp=trim(strip_tags($tmp));} else {$st=ereg_replace(,⌒,$tmp);$stt=split(⌒,$st);foreach($stt as $key = $value){if(strstr($value,img) ){$tmp=$value;$tmp=ereg_replace(src=,width=30 height=30 align=absmiddle src=,$tmp);if(strstr($tmp,bt9.jpg) || strstr($tmp,colline.gif)) $tmp=;}}}if(trim($tmp)!= && trim($tmp)!= ) $arr[]=$tmp;}$yb=array();for($i=2;$icount($arr)-6;$i++){$yb[]=$arr[$i];}?brSCRIPT LANGUAGE=JavaScript!--syb=;?$exp=-3-7-9-14-18-20-25-;for ($i=1;$icount($yb);$i++){if (!strstr($exp,-.(string)($i+1).-)){?syb=syb+'?=$yb[$i];? ';?}}?document.write(?=$yb[0]?+:);document.write(marquee width=400 align=middle scrollamount=5 scrolldelay=200+syb+预报/marquee);//--/SCRIPT本来获取的语句只需要执行一次,然后将获取的数据和旧数据比较,是否是新的,如果是新的,替换掉旧数据,否则,不替换。这是有规律可寻的,先判断时间,一般比预报时间晚一个小时的话,肯定可以获取最新的预报数据了。不过现在我没有考虑那么多,以后再说吧!

PHP - Html Transfer Code超文本转换码,市面上这东西已经很滥了,不过是这几天自己实践了一下~~支持 多重嵌套 和 同标签嵌套,混合高亮显示自我感觉便于修改和扩充~~~?php/*************************************************** ** Name : Functions 4 Html Transfer Code (HTC)** Version : 1.3.2 ** Author: Windy_sk ** Create: 2003-09-03 ** Modified: 2003-12-17 ** Email : windy_sk@126.com ** HomePage: None (Maybe Soon) ** Notice: U Can Use & Modify it freely, ** BUT PLEASE HOLD THIS ITEM. ** ***************************************************/$htc_list = array( "B" = "b//1/b", "I" = "i//1/i", "U" = "u//1/u", "CENTER" = "center//1/center/n", "URL" = "a href='//1'//1/a", "EMAIL" = "a href='mailto://1'//1/a", "IMAGE" = "br /table width='100%'trtd align='center'img src='//1' border='0' onload='org_w=this.offsetWidth;this.style.width=10;this.style.width=(org_wparseInt(this.offsetParent.offsetWidth))?this.offsetParent.offsetWidth:org_必赢备用网址 ,w' onclick='window.open(this.src)' style='cursor:pointer' //td/tr/tablebr //n", "DOWNLOAD" = "exec:get_dl_html('//1')", "LIST" = "exec:get_list_html('//1')", "QUOTE" = "centertable border='0' width='90%' cellspacing='0' cellpadding='0'trtd 引用:/td/trtrtdtable width='100%' class='quote'trtd//1/td/tr/table/td/tr/table/center/n", "IFRAME" = "table trtdiframe src='//1' frameborder='0' allowtransparency='true' scrolling='yes' width='400' height='300'/iframe/td/tr/table/n", "MOVE" = "centermarquee width='90%' behavior='alternate' scrollamount='3'//1/marqueecenter/n", "GLOW" = "tabletrtd class='glow'//1/td/tr/table/n", "SHADOW" = "tabletrtd class='shadow'//1/td/tr/table/n", "DROPSHADOW" = "tabletrtd class='dropshadow'//1/td/tr/table/n", "GBMUSIC" = "bgsound src='//1' loop='-1'/n", "MUSIC" = "TABLE cellSpacing=0 cellPadding=0 border=0TBODYTRTD vAlign=top colSpan=3EMBED name=music_rm align=top src='//1' width='200' height='30' type='audio/x-pn-realaudio-plugin' console='ClipNN' loop='false' autostart='false' controls='ControlPanel' border='1' vspace='0' hspace='0'/EMBEDbrSTRONGA href='//1'Download The Music/A/STRONG/TD/TR/TBODY/TABLE/n", "FLASH" = "table trtdobject classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='#version=6,0,29,0' width='400'param name='movie' value='//1'param name='quality' value='high'embed src='//1' quality='high' pluginspage='' type='application/x-shockwave-flash' width='32' height='32'/embed/object/td/tr/table/n", "SHOCKWAVE" = "table trtdobject classid='clsid:166B1BCA-3F9C-11CF-8075-444553540000' codebase='#version=8,5,0,0' width='400'param name='src' value='//1'embed src='//1' pluginspage='' width='400'/embed/object/td/tr/table/n", "QUICKTIME" = "table trtdembed src='//1' width='400' height='300' autoplay='true' loop='false' controller='true' playeveryframe='false' cache='false' scale='TOFIT' bgcolor='#000000' kioskmode='false' targetcache='false' pluginspage=''brSTRONGA href='//1'Download The Movie/A/STRONG/td/tr/table/n", "REALPLAYER" = "TABLE cellSpacing=0 cellPadding=0 border=0TBODYTRTD vAlign=top colSpan=3EMBED name=movie_rm align=top src='//1' width='400' height='300' type='audio/x-pn-realaudio-plugin' console='ClipNN' loop='true' autostart='true' controls='ImageWindow,ControlPanel' border='1' vspace='0' hspace='0'/EMBEDbrSTRONGA href='//1'Download The Movie/A/STRONG/TD/TR/TBODY/TABLE/n", "MEDIAPLAYER" = "table trtdobject classid='clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95' width='400'param name='ShowStatusBar' value='-1'param name='Filename' value='//1'embed type='application/x-oleobject' codebase='#Version=5,1,52,701' flename='mp' src='//1' width='400'/embed/objectbr /STRONGA href='//1'Download The Movie/A/STRONG/td/tr/table/n", "VOTE" = "exec:get_vote_html('//1')", );$htc_list_att = array( "ALIGN" = "div align='//1'//2/div/n", "URL" = "a href='//1'//2/a", "EMAIL" = "a href='mailto://1'//2/a", "IMAGE" = "br /table width='100%'trtdimg alt='//1' src='//2' border='0' onload='org_w=this.offsetWidth;this.style.width=10;this.style.width=(org_wparseInt(this.offsetParent.offsetWidth))?this.offsetParent.offsetWidth:org_w;' onclick='window.open(this.src)' style='cursor:pointer' //td/tr/tablebr //n", "FONTFACE" = "span style='FONT-FAMILY://1'//2/span", "FONTSIZE" = "span style='font-size://1'//2/span", "FONTCOLOR" = "span style='color://1'//2/span", "DOWNLOAD" = "exec:get_dl_html('//1', '//2')", "LIST" = "exec:get_list_html('//2','//1')", "ATTACH" = "exec:get_attach_html('//2', '//1')", "VOTE" = "exec:get_vote_html('//1','//2')", );$htc_list_spl = array( "PHP" = "exec:get_highlight_html('//1', 'php')", "CSS" = "exec:get_highlight_html('//1', 'css')", "HTML" = "exec:get_highlight_html('//1', 'html')", "SCRIPT" = "exec:get_highlight_html('//1', 'script')", "CODE" = "exec:get_code_html('//1')", "EXECUTE" = "//1", );function get_highlight_html($str, $type = "php") { $type = strtolower($type); $type_func = $type."_highlight"; $type = strtoupper($type); $result = "centertable border='0' width='90%' cellspacing='0' cellpadding='0'"; if(!function_exists($type_func)) $type_func = "php_highlight"; $result .= " trtd高亮显示 font color='red'{$type}/font 代码:/td/tr trtd table width='100%' class='quote'trtd ".$type_func($str)." /td/tr/table ".($type=="HTML"?"input type='button' value='运行代码' onclick=/"str=this.parentNode.firstChild.innerText;if(str==undefined){alert('Execute Codez Failed !');return;}code_win=window.open('about:blank');doc=code_win.document;doc.open();doc.write(str);doc.close();code_win.focus();/" /":"")." input type='button' value='复制代码' onclick=/"try{window.clipboardData.setData('text',this.parentNode.firstChild.innerText);alert('Save Codez To The Clipboard !');}catch(e){alert('Codez Copy Failed !');}/" input type='button' value='保存代码' onClick=/"try{str=this.parentNode.firstChild.innerText;code_win=window.open('about:blank','_blank','top=10000');code_win.document.writeln(str);code_win.document.execCommand('saveas','','code.html');code_win.close();}catch(e){alert('Codez Save Failed !');}/" /td/tr /table/center "; return $result;}function php_highlight($str) { $str = str_replace("///"","/"",$str); return highlight_string($str, true);}function css_highlight($str, $nl = true) { $color_1 = "red"; $color_2 = "green"; $color_3 = "blue"; $str = str_replace("///"","/"",$str); $str = str_replace("/r", "", $str); preg_match_all("/[///*/./w#: ]+/{[^/{/}]+/}/", $str, $arr_css); $arr_css = $arr_css[0]; for($i=0; $icount($arr_css); $i++) { $head = preg_replace("/([///*/./w#: ]+/{)[^/{/}]+/}/", "font color='{$color_1}'//1/font".($nl?"br //n":""), $arr_css[$i]); $unit = preg_replace("/[///*/./w#: ]+/{([^/{/}]+)/}/", "//1", $arr_css[$i]); $unit_list = preg_split("/;/s*/", $unit); $unit = "/n"; for($j=0; $jcount($unit_list); $j++) { if(strlen($unit_list[$j])0) $unit .= " " . preg_replace("//s*([/w/-]+)/s*:/s*(.*)/e", "'font color=/'{$color_2}/'//1/font : font color=/'{$color_3}/''.htmlspecialchars('//2').'/font ; '", $unit_list[$j]) . ($nl?"br //n":"/n"); } $arr_css[$i] = $head . $unit . "font color='{$color_1}'}/font"; } return join(($nl?"/nbr /br //n":"/n/n"), $arr_css);}function script_highlight_note($str, $mode = true) { $color_note = "gray"; $str = str_replace("///"","/"",$str); $str = preg_replace("/font color='[a-z]+'(.*)//font/isU", "//1", $str); $str = $mode?"/*{$str}*/":"//{$str}"; return "font color='{$color_note}'{$str}/font";}function script_highlight($str, $nl = true) { $color_1 = "red"; $color_2 = "blue"; $color_3 = "brown"; $color_4 = "green"; $str = str_replace("///"","/"",$str); $str = htmlspecialchars($str); $str = str_replace("=","",$str); $str = str_replace("|","",$str); $keywords = array( "{$color_1}" = array("null", "true", "false", "NaN"), "{$color_2}" = array("var", "for", "if", "else", "switch", "case", "function", "loop", "continue", "break", "", "", "!", "", "", "", ""), "{$color_3}" = array("window", "self", "this", "event", "document", "opener", "Navigator", "Math", "Array", "String", "Object", "Function", "Number"), ); foreach($keywords as $key = $value) { for($i=0; $icount($value); $i++) { $str = preg_replace("/(/W)(".$value[$i].")(/W)/", "//1font color='{$key}'//2/font//3", $str); } } $str = preg_replace("/(/.|/s)([a-z]+)/(/i" ,"//1font color='{$color_4}'//2/font(", $str); $str = preg_replace("//.(/w+)(?!/()/i" ,".font color='{$color_3}'//1/font", $str); $str = preg_replace("/////([^/n]*)/n/e" ,"script_highlight_note('//1', false)", $str); $str = preg_replace("////*(.*?)/*///es" ,"script_highlight_note('//1')", $str); $str = str_replace("/t", " ", $str); $str = str_replace("","=",$str); $str = str_replace("","|",$str); return $nl?nl2br($str):$str;}function html_highlight_attr($att) { $color_1 = "red"; $color_2 = "brown"; $color_3 = "black"; $att = str_replace("///"","/"",$att); $att = preg_replace("/=/s*('|/")([^'/"]+)//1/eU","'=//1'.preg_replace('//s+/','|:s:|','//2').'//1'",$att); $att = str_replace("///"","/"",$att); $att .= " "; preg_match_all("/[a-z:///-]+(=(['/"]?).*[^////]{1}//2?)?/s+/iU", $att, $att_list); $att_list = $att_list[0]; for($i=0; $icount($att_list); $i++) { if(empty($att_list[$i])) continue; $att_list[$i] = trim($att_list[$i]); $att_list[$i] = preg_replace("/([^=]+)([=]?)(['/"]?)(.*)(//3)/", "font color='{$color_2}'//1/ fontfont color='{$color_1}'//2/ font//3font color='{$color_3}'//4/ font//3", $att_list[$i]); } return str_replace("|:s:|", " ", join(" ", $att_list));}function html_highlight($str) { $color_1 = "red"; $color_2 = "blue"; $color_3 = "gray"; $str = str_replace("///"","/"",$str); preg_match_all("/script([^]*)(.*)//script/isU", $str, $arr_tmp); $arr_script = $arr_tmp[0]; for($i=0; $icount($arr_script); $i++) { $str = str_replace($arr_script[$i], "::script_{$i}::", $str); $arr_script[$i] = preg_replace("/script([^]*)(.*)//script/iseU", "'font color=/'{$color_2}/'SCRIPT '.html_highlight_attr('//1').'/fontbr /'.script_highlight(str_replace('///"','/"','//2'), false).'font color=/'{$color_2}/'/SCRIPT/font'", $arr_script[$i]); } $str = preg_replace("/(textarea[^]*)(.*)(//textarea)/ieU" ,"'//1'.htmlspecialchars('//2').'//3'", $str); $str = preg_replace("/!/-/-(.*)/-/-/seU" ,"'!--'.htmlspecialchars('//1').'--'", $str); $str = preg_replace("/style([^]*)(.*)//style/isU" ,"!style//1//2/style!", $str); $str = preg_replace("/([a-z:]+)/s*(.*?)( //|//)?/ise" ,"'font color=/'{$color_2}/'//1 '.html_highlight_attr('//2').'//3/ font'", $str); $str = preg_replace("/(//[a-z:]+)/i" ,"font color='{$color_2}'//1/font", $str); $str = preg_replace("/(!/-/-.*/-/-)/sU" ,"font color='{$color_3}'//1/font", $str); $str = preg_replace("/!style([^]*)(.*)//style!/iseU" ,"'font color=/'{$color_2}/'STYLE '.html_highlight_attr('//1').'/fontbr /'.css_highlight(str_replace('///"','/"','//2'), false).'br /font color=/'{$color_2}/'/STYLE/font'", $str); for($i=0; $icount($arr_script); $i++) { $str = str_replace("::script_{$i}::", $arr_script[$i], $str); } $str = str_replace("/ font", "/font", $str); $str = str_replace("/ b", "/b", $str); $str = str_replace(" ", "", $str); $str = str_replace(""," ",$str); $str = str_replace("/t"," ",$str); return nl2br($str);}function get_file_pic($filename) { global $root_path; $ext = str_replace(".","",strrchr($filename,".")); $pic = $root_path."images/mime_type/{$ext}.gif"; return file_exists($pic)?"$pic":$root_path."images/mime_type/attch.gif";}function get_dl_html($filename, $str = "") { return "img src='".get_file_pic($filename)."' border='0' a href='$filename'".(empty($str)?basename($filename):$str)."/a";}function get_attach_html($filename, $id) { return "img src='".get_file_pic($filename)."' border='0' a href='attach_manage.php?method=download&id=$id'$filename/a";}function get_vote_html($vote_idx, $message = ""){ global $db_host, $db_user, $db_pass, $db_name; $db = new DB_Manager($db_host, $db_user, $db_pass); $db-Connect(); $db-SelectDB($db_name); $db-Query("select * from mnms_poll where "; $db-close(); unset($db); if($record) { $username = "dummy"; $if_vote = !(strpos($record[vote_user], "|{$username}|")===false) strpos($record[vote_user], "|".GetIp()."|"); $str .= " fieldset legend align='left' color=black".(empty($message)?$record[vote_title]:$message)."/legend form name='poll' action='poll_manage.php?method=vote' method='post' table width='90%' align='center'"; $vote_list = split("::",$record[vote_list]); $vote_count = split("::",$record[vote_count]); $vote_users = count(split("/n", $record[vote_user])) - 1; $vote_sum = array_sum($vote_count); $str .= " trtd colspan='2' 目前共有 font color='red'{$vote_users}/font 人参与了本投票 /td/tr"; if($vote_sum==0) $vote_sum = 1; for($i=0; $icount($vote_list); $i++) { $str .= " trtd".($if_vote?" ":"input type='hidden' value='".$vote_count[$i]."' name='vote_count[]'input type='".($record[vote_multi]=='Y'?"checkbox":"radio")."' name='vote[]' value='{$i}'").htmlspecialchars($vote_list[$i])."/tdtd width='400'img src='images/bars/bar".($i+1).".gif' width='".ceil($vote_count[$i]*300/$vote_sum)."' height='10' 占总票数的 font color='#990000'".ceil((int)$vote_count[$i]*100/$vote_sum)."%/font/td/tr/n"; } $str .= "trtd colspan='2' align='center'br".($if_vote?"b您已经投过票了!/b":"input type='hidden' value='{$record[id]}' name='id'input type='Submit' value=' 确 定 ' name='Submit' input type='reset' value=' 重 置 ' name='reset'")."/td/tr"; $str .= " /table /form /fieldset"; } return $str;}function get_code_html($str) { $str = str_replace("///"","/"",$str); return " table align='center' width='550' trtdtextarea cols='80' rows='10' name=Code".htmlspecialchars($str)."/textareabr input type='button' value='运行代码' onClick=/"str=this.parentNode.firstChild.value;code_win=window.open('about:blank');doc=code_win.document;doc.open();doc.write(str);doc.close();code_win.focus();/" input type='button' value='复制代码' onclick=/"try{window.clipboardData.setData('text',this.parentNode.firstChild.value);alert('Save Codez To The Clipboard !');}catch(e){alert('Please Copy The Selected Codez !');this.parentNode.firstChild.select();}/" input type='button' value='保存代码' onClick=/"str=this.parentNode.firstChild.value;code_win=window.open('about:blank','_blank','top=10000');code_win.document.writeln(str);code_win.document.execCommand('saveas','','code.html');code_win.close();/" /td/tr /table";}function get_list_html($content, $type = "") { $content = preg_replace("/(br //)?[/r/n]+/", "/n", $content); $content = preg_replace("/[/r/n]+/", "/n", $content); $content = preg_replace("/^[/n]*(.*)[/n]*$/m", "//1", $content); $content = str_replace("/n", "/lili", $content); $content = "ul type='$type'li$content/li/ul/n"; return $content;}function html_trans($str) { $search= array("&", "'", "/"", "", "", "", "/t"); $replace = array("", "", "", "", "", " ", " "); return nl2br(str_replace($search, $replace, $str));}function link_url($str) { $str = preg_replace("/((http|ftp|mms|rtsp|pnm|mailto):////[/w@:/.///?=&;#/-%]+)/i", "a href='//1' target='_blank'//1/a", $str); $str = preg_replace("/(/w+@(/w+/.)+[/w]{2,3})/i", "a href='mailto://1'//1/a", $str); $str = preg_replace("/(href|src)='a href=('.+')[^]+//a'/iU", "//1=//2", $str); return $str;}function htc2html_loop($str) { global $htc_list, $htc_list_att; foreach($htc_list as $key = $value) { if(substr($value,0,5)=="exec:"){ $str = preg_replace("//[$key/]((.(?!/[$key(/s?=/s?([^/]]+))?/]))*)/[//$key/]/iexsU", substr($value,5), $str); } else { $str = preg_replace("//[$key/]((.(?!/[$key(/s?=/s?([^/]]+))?/]))*?)/[//$key/]/ixsU", "$value", $str); } } foreach($htc_list_att as $key = $value) { if(substr($value,0,5)=="exec:"){ $str = preg_replace("//[$key/s?=/s?([^/]]+)/]((.(?!/[$key(/s?=/s?([^/]]+))?/]))*)/[//$key/]/iesxU", substr($value,5), $str); } else { $str = preg_replace("//[$key/s?=/s?([^/]]+)/]((.(?!/[$key(/s?=/s?([^/]]+))?/]))*)/[//$key/]/isxU", "$value", $str); } } return $str;}function htc2html($str, $trans_url = true , $loop = 3) { global $htc_list_spl; $str = preg_replace("/(/[/w+/])/s*/ixs","//1",$str); $str = preg_replace("//s*(/[///w+/])/ixs","//1",$str); foreach($htc_list_spl as $key = $value) { preg_match_all("//[$key/](.*)/[//$key/]/ixsU", $str, $arr_tmp); $arr_spl[$key] = $arr_tmp[0]; for($i=0; $icount($arr_spl[$key]); $i++) { $str = str_replace($arr_spl[$key][$i], "::{$key}_{$i}::", $str); if(substr($value,0,5)=="exec:"){ $arr_spl[$key][$i] = preg_replace("//[$key/](.*)/[//$key/]/iexsU", substr($value,5), $arr_spl[$key][$i]); } else { $arr_spl[$key][$i] = preg_replace("//[$key/](.*)/[//$key/]/ixsU", "$value", $arr_spl[$key][$i]); } } } $str = html_trans($str); while($loop-- 0) { if(!preg_match("//[(/w+)(/s?=/s?([^/]]+))?/](.*)/[////1/]/isU", $str)) break; $str = htc2html_loop($str); } if($trans_url) $str = link_url($str); foreach($htc_list_spl as $key = $value) { for($i=0; $icount($arr_spl[$key]); $i++) { $str = str_replace("::{$key}_{$i}::", $arr_spl[$key][$i], $str); } } return $str;}?使用方法:echo htc2html($str);OK 了~~