仓酷云
标题:
PHP教程之ANSI色彩码转HTML
[打印本页]
作者:
只想知道
时间:
2015-2-4 00:10
标题:
PHP教程之ANSI色彩码转HTML
学会了生成静态网页,现在你应该接触一下XML了,恩,XML也了解了,那么AJAX你也得接触接触吧?AJAX完了....然后... 此办法是一字一字往下抓ANSI色彩码转换,有点土法炼钢。以后和大局部TELNET软件
对照分歧是他们换行就有主动作加入码,而我这个并没有作。
<?
Echo
"<body bgcolor=000000><PRE Style='font-family:cvga;font-size:18px;color:C6C7C6;'>"
;
Echo
ANSI_2_HTML
(
Fread
(
Fopen
(
"1.txt"
,
"r"
),
FileSize
(
"1.txt"
)));
Echo
"</pre>"
;
## ANSI 转换成 HTML
Function
ANSI_2_HTML
(
$String
){
$ANSI_Light
=Array(
"0"
=>
"000000"
,
"1"
=>
"#FF0000"
,
"2"
=>
"#00CC00"
,
"3"
=>
"#FFFF00"
,
"4"
=>
"#3366FF"
,
"5"
=>
"#CC33CC"
,
"6"
=>
"#66FFFF"
,
"7"
=>
"#FFFFFF"
);
$ANSI_Dark
=Array(
"0"
=>
"000000"
,
"1"
=>
"#840000"
,
"2"
=>
"#008200"
,
"3"
=>
"#AD4100"
,
"4"
=>
"#000084"
,
"5"
=>
"#840084"
,
"6"
=>
"#00B6B5"
,
"7"
=>
"#C6C7C6"
);
## 色彩样本同CNEWS
$flag_have_ansi
=
0
;
$dl
=
0
;
$flag_hava_bg
=
0
;
$String
=
Str_replace
(
Chr
(
27
).
'[m'
,
Chr
(
27
).
'[0m'
,
$String
);
For(
$i
=
0
;
$i
<
Strlen
(
$String
);
$i
++):
If(
$String
[
$i
]==
Chr
(
27
)):
$lastString
=
Substr
(
$String
,
$i
,
Strlen
(
$String
)-
$i
);
If(
Ereg
(
Chr
(
27
).
"\[([0-8;]{0,}[^m])m"
,
$lastString
)):
$ansicode
=
Substr
(
$lastString
,
2
,
Strpos
(
$lastString
,
'm'
)-
2
);
$i
=
$i
+
Strpos
(
$lastString
,
'm'
);
$Rendition
=
Split
(
";"
,
$ansicode
);
If(
Is_Array
(
$Rendition
))
Sort
(
$Rendition
);
For(
$j
=
0
;
$j
<=
count
(
$Rendition
)-
1
;
$j
++):
$Rendition
[
$j
]=(int)
$Rendition
[
$j
];
If(
$Rendition
[
$j
]==
'1'
)
$dl
=
1
;
If(
$Rendition
[
$j
]==
'0'
)
$dl
=
0
;
$ansi
=(
$dl
==
'0'
) ?
$ANSI_Dark
:
$ANSI_Light
;
If(
$Rendition
[
$j
]<
10
):
If(
$Rendition
[
$j
]==
0
) :
$style
=
"background-color:#000000;text-decoration:none;"
;
$tempBg
=
""
;
EndIf;
If(
$Rendition
[
$j
]==
1
)
$style
=
"color:#ffffff;"
;
If(
$Rendition
[
$j
]==
4
)
$style
=
$style
.
"text-decoration:underline;"
;
# 5 blink on
# 7 reverse video on
# 8 nondisplayed (invisible) 缺 不晓得若何实作显示,但大局部后三者用不到
EndIf;
If(
$Rendition
[
$j
]>=
30
&&
$Rendition
[
$j
]<=
37
):
$style
=
$style
.
"color:"
.
$ansi
[
$Rendition
[
$j
]%
10
].
";"
;
$style
=
$style
.
$tempBg
;
EndIf;
If(
$Rendition
[
$j
]>=
40
):
$flag_hava_bg
=
1
;
$style
=
$style
.
"background-color:"
.
$ANSI_Dark
[
$Rendition
[
$j
]%
10
].
";"
;
$tempBg
=
"background-color:"
.
$ANSI_Dark
[
$Rendition
[
$j
]%
10
].
";"
;
EndIf;
EndFor;
If(
$flag_have_ansi
==
1
):
$font
=
"</span><span style=$style>"
;
ElseIf(
$flag_have_ansi
==
0
):
$flag_hava_bg
=
0
;
$tempBg
=
""
;
$font
=
"<span style=$style>"
;
EndIf;
$flag_have_ansi
=
1
;
$myansi
.=
$font
;
EndIf;
Else:
$myansi
.=
$String
[
$i
];
EndIf;
EndFor;
Return
"</span>"
.
$myansi
;
}
下图为TELNET软件阅读
登录/注册后可看大图
下图为阅读器阅读
登录/注册后可看大图
大家如果能懂得“熟能生巧”的道理也就明白了这并不是浪费时间,同时这也可以减轻板主的负担,让他们有时间去处理更难的问题。
作者:
冷月葬花魂
时间:
2015-2-4 09:49
本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。
作者:
再现理想
时间:
2015-2-5 04:53
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
作者:
若天明
时间:
2015-2-11 04:39
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
作者:
仓酷云
时间:
2015-3-8 00:03
我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。
作者:
活着的死人
时间:
2015-3-10 07:57
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
作者:
老尸
时间:
2015-3-17 05:11
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
作者:
精灵巫婆
时间:
2015-3-17 17:06
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
作者:
分手快乐
时间:
2015-3-18 16:52
写的比较杂,因为我也是个新手,不当至于大家多多指正。
作者:
飘灵儿
时间:
2015-3-22 17:09
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
作者:
海妖
时间:
2015-3-27 16:10
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
作者:
小魔女
时间:
2015-3-27 20:09
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
作者:
因胸联盟
时间:
2015-4-4 00:45
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox 支持的不是很好,所以能少用还是少用的好。
作者:
愤怒的大鸟
时间:
2015-4-6 04:10
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
作者:
谁可相欹
时间:
2015-4-16 08:31
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
作者:
灵魂腐蚀
时间:
2015-4-16 12:11
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
作者:
第二个灵魂
时间:
2015-4-16 20:10
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
作者:
蒙在股里
时间:
2015-4-17 10:21
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
作者:
飘飘悠悠
时间:
2015-5-9 12:41
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2