- 浏览: 13747201 次
- 性别:
- 来自: 洛杉矶
文章分类
- 全部博客 (1994)
- Php / Pear / Mysql / Node.js (378)
- Javascript /Jquery / Bootstrap / Web (435)
- Phone / IOS / Objective-C / Swift (137)
- Ubuntu / Mac / Github / Aptana / Nginx / Shell / Linux (335)
- Perl / Koha / Ruby / Markdown (8)
- Java / Jsp (12)
- Python 2 / Wxpython (25)
- Codeigniter / CakePHP (32)
- Div / Css / XML / HTML5 (179)
- WP / Joomla! / Magento / Shopify / Drupal / Moodle / Zimbra (275)
- Apache / VPN / Software (31)
- AS3.0/2.0 / Flex / Flash (45)
- Smarty (6)
- SEO (24)
- Google / Facebook / Pinterest / SNS (80)
- Tools (22)
最新评论
-
1455975567:
xuezhongyu01 写道wocan23 写道我想问下那个 ...
Mysql: LBS实现查找附近的人 (两经纬度之间的距离) -
xuezhongyu01:
wocan23 写道我想问下那个111.1是怎么得来的我也看不 ...
Mysql: LBS实现查找附近的人 (两经纬度之间的距离) -
18335864773:
试试 pageoffice 在线打开 PDF 文件吧. pag ...
jquery在线预览PDF文件,打开PDF文件 -
青春依旧:
opacity: 0.5; 个人喜欢这种方式!关于其他css特 ...
css透明度的设置 (兼容所有浏览器) -
July01:
推荐用StratoIO打印控件,浏览器和系统的兼容性都很好,而 ...
搞定网页打印自动分页问题
有点像现在流行的输入法中的特殊字符。
1. 英文字母或者数字转ASCII 效果如上
class:
<? class ascii { var $asciiText; function ascii($text,$style) { switch($style) { case 'graffiti': include "graffiti.font"; break; case 'banner': include 'banner.font'; break; default: include 'dos.font'; break; } $text=strtolower($text); for($c=0;$c<strlen($text);$c++) $symbol[$c]=explode("\n",$arr[$text[$c]]); for($c=0;$c<sizeof($symbol[0]);$c++): for($k=0;$k<strlen($text);$k++) $output.=" ".str_replace("\r","",$symbol[$k][$c]); $output.="\n"; endfor; $this->asciiText=$output; } }
实例:
<PRE> <? include_once("ascii.class.php"); // includes the class's file $text=new ascii("justcoding","doc"); // first parameter is text that will be converted, second is the font style print $text->asciiText; // asciiText is variable of converted text ?> </PRE>
可以通过css控制字符大小。具体见附件。
2. 汉字转ASCII 效果为 “星期天 ” 就是 “星期天”
function encode($c) { $len = strlen($c); $a = 0; while ($a < $len) { $ud = 0; if (ord($c{$a}) >=0 && ord($c{$a})<=127) { $ud = ord($c{$a}); $a += 1; } else if (ord($c{$a}) >=192 && ord($c{$a})<=223) { $ud = (ord($c{$a})-192)*64 + (ord($c{$a+1})-128); $a += 2; } else if (ord($c{$a}) >=224 && ord($c{$a})<=239) { $ud = (ord($c{$a})-224)*4096 + (ord($c{$a+1})-128)*64 + (ord($c{$a+2})-128); $a += 3; } else if (ord($c{$a}) >=240 && ord($c{$a})<=247) { $ud = (ord($c{$a})-240)*262144 + (ord($c{$a+1})-128)*4096 + (ord($c{$a+2})-128)*64 + (ord($c{$a+3})-128); $a += 4; } else if (ord($c{$a}) >=248 && ord($c{$a})<=251) { $ud = (ord($c{$a})-248)*16777216 + (ord($c{$a+1})-128)*262144 + (ord($c{$a+2})-128)*4096 + (ord($c{$a+3})-128)*64 + (ord($c{$a+4})-128); $a += 5; } else if (ord($c{$a}) >=252 && ord($c{$a})<=253) { $ud = (ord($c{$a})-252)*1073741824 + (ord($c{$a+1})-128)*16777216 + (ord($c{$a+2})-128)*262144 + (ord($c{$a+3})-128)*4096 + (ord($c{$a+4})-128)*64 + (ord($c{$a+5})-128); $a += 6; } else if (ord($c{$a}) >=254 && ord($c{$a})<=255) { //error $ud = false; } $scill .= "&#$ud;"; } return $scill; } echo encode('日'); // 日 浏览器默认会解读,所以要看源代码
3. utf-8 unicode 互转
<? // utf8 - unicode function utf8_unicode($c) { switch(strlen($c)) { case 1: return ord($c); case 2: $n = (ord($c[0]) & 0x3f) << 6; $n += ord($c[1]) & 0x3f; return $n; case 3: $n = (ord($c[0]) & 0x1f) << 12; $n += (ord($c[1]) & 0x3f) << 6; $n += ord($c[2]) & 0x3f; return $n; case 4: $n = (ord($c[0]) & 0x0f) << 18; $n += (ord($c[1]) & 0x3f) << 12; $n += (ord($c[2]) & 0x3f) << 6; $n += ord($c[3]) & 0x3f; return $n; } } echo utf8_unicode('以'); ?>
<? // unicode - utf8 function u2utf8($c) { $str=""; if ($c < 0x80) $str.=$c; else if ($c < 0x800) { $str.=chr(0xC0 | $c>>6); $str.=chr(0x80 | $c & 0x3F); } else if ($c < 0x10000) { $str.=chr(0xE0 | $c>>12); $str.=chr(0x80 | $c>>6 & 0x3F); $str.=chr(0x80 | $c & 0x3F); } else if ($c < 0x200000) { $str.=chr(0xF0 | $c>>18); $str.=chr(0x80 | $c>>12 & 0x3F); $str.=chr(0x80 | $c>>6 & 0x3F); $str.=chr(0x80 | $c & 0x3F); } return $str; } echo u2utf8('20197'); ?>
- ascii.zip (5.2 KB)
- 下载次数: 77
发表评论
-
PHP: 在类(class)中加载动态函数, 变量函数或半变量函数 variable function/method
2016-09-03 07:54 7185最终实例在下方 以前 ... -
MySQL入门 (七) : 储存引擎与资料型态
2016-09-03 07:49 45651 表格与储存引擎 表格(table)是资料库中用来储存 ... -
MySQL入门 (六) : 字元集与资料库
2016-09-03 07:47 45771 Character Set与Collation 任何 ... -
MySQL入门 (五) : CRUD 与资料维护
2016-09-03 07:46 54881 取得表格资讯 1.1 DESCRIBE指令 「 ... -
MySQL入门 (四) : JOIN 与UNION 查询
2016-09-03 07:42 45121 使用多个表格 在「world」资料库的「countr ... -
PHP: 关键字global 和 超全局变量$GLOBALS的用法、解释、区别
2016-08-31 12:07 5046$GLOBALS 是一个关联数组,每一个变量为一个 ... -
MySQL入门 (三) : 运算式与函式
2016-08-31 12:01 4392运算式(expressions)已经 ... -
MySQL入门 (二) : SELECT 基础查询
2016-08-31 11:56 46901 查询资料前的基本概念 1.1 表格、纪录 ... -
MySQL入门 (一) : 资料库概论与MySQL的安装
2016-08-31 11:51 44691. 储存与管理资料 储存与管理资料一直是资讯应用上最基本 ... -
MySQL入门 (九) : 子查询 Subquery
2016-08-30 02:26 44541 一个叙述中的查询叙述 子查询(subquery)是一 ... -
PHP: 用readonly取代disabled来获取input值 submit a disabled input in a form could not ge
2016-08-30 02:21 2718The form is like below; <f ... -
PHP7革新与性能优化
2016-08-30 02:20 2155有幸参与2015年的PHP技 ... -
Mysql: 图解 inner join、left join、right join、full outer join、union、union all的区别
2016-08-18 06:03 3131对于SQL的Join,在学习起来可能是比较乱的。我们知道, ... -
Comet 反Ajax: 基于jQuery与PHP实现Ajax长轮询(LongPoll)
2016-08-18 06:00 1386传统的AJAX轮询方式,客服端以用户定义的时间间隔去服务器上 ... -
PHP:ServerPush (Comet推送) 技术的探讨
2016-08-18 05:58 1048PHP中Push(推送)技术的探讨 [http://vi ... -
PHP: 手把手编写自己的 MVC 框架实例教程
2016-08-16 05:33 18221 什么是MVC MVC模式(Model-View-Con ... -
PHP5: mysqli 插入, 查询, 更新和删除 Insert Update Delete Using mysqli (CRUD)
2016-07-29 12:55 1760原文: PHP5: mysqli 插入, 查询, 更新 ... -
MongoDB 教程索引 (附有视频)
2016-07-27 10:54 756MongoDB 教程索引 MongoDB 教程一: ... -
Node.js 模块之Nimble流程控制
2016-07-18 12:59 1087NodeJS异步的特性有时候 ... -
Node.js web应用模块之Supervisor
2016-07-18 12:56 2335在开发或调试Node.js应 ...
相关推荐
在做Labview和tcp通讯的时候,需要发送中文字符串,找了会相关资料,竟然找到了labview提供的现成的字符串到utf8相互转换的vi,整理了一下分享出来,2014环境下目前测试可以直接使用。原文...
UTF-8的最大优点是与ASCII兼容,这意味着英文和其他使用ASCII编码的字符在UTF-8下保持不变,这使得UTF-8成为互联网上最常用的字符编码。 在Keil MDK环境下,这通常涉及到的是嵌入式开发,单片机因其资源有限,通常...
GBK包含了大部分常用汉字和一些符号,但不支持Unicode字符集中的所有字符,尤其是非中文字符。在某些老版本或特定的中文系统中,GBK编码更为常见。 在LabVIEW中,如果你的数据源使用UTF-8编码,而在系统或者程序中...
每个字符在UTF-8中用1到4个字节表示,其中ASCII字符(如英文字母、数字)仅用1个字节,而中文等多字节字符则用2至4个字节。例如,“你好”这两个汉字在UTF-8中分别占用3个字节,用16进制表示就是"\xE4\xBD\xA0"和"\...
UTF-8的优势在于对ASCII字符(英文字符)保持原样,使得它在网络传输和文件存储上具有良好的兼容性。 GBK编码,全称“汉字内码扩展规范”,是中国大陆的标准,是对GB2312编码的扩展,包含20902个汉字和其他符号,...
UTF-8的特点是前几个常用的ASCII字符(如英文字符)使用单字节编码,而其他非ASCII字符则使用2到4个字节。这种设计使得UTF-8与ASCII兼容,同时支持全球多种语言的字符。在网页、编程语言和操作系统中,UTF-8已成为...
例如,一个单字节的ASCII字符,其最高位为0;一个多字节的字符,其最高位为1,后续字节的最高两位为10。 2. **计算字符长度**:根据识别出的字节序列,确定字符的总字节数。例如,如果第一个字节的二进制表示以110...
PB的utf-8转换,包括加码解码等等 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
而Latin1(也称为ISO-8859-1)则是一种单字节编码,主要用于西欧语言,对非ASCII字符的支持有限。 在描述中提到的“将UTF-8字符串转换为Latin1编码”,这是一个编码转换的过程。例如,中文的“世界”在UTF-8编码下...
- **存储效率**:UTF-8对于英文等ASCII字符集来说,存储效率更高;GBK对于中文字符来说,存储效率高于UTF-8。 - **国际化支持**:UTF-8更易于实现国际化应用,而GBK则更适合单一语言的应用场景。 #### 四、编码问题...
**源码阅读神器Source Insight与UTF-8编码的适配及乱码问题解决方案** Source Insight是一款备受程序员喜爱的源代码阅读和编辑工具,它以其强大的语法高亮、代码跳转和实时预览等功能,极大地提高了代码阅读和分析...
UTF-8的特点是每个Unicode字符可以被编码为1到4个字节,其中ASCII字符(基本的英文字符)仅需1个字节。这使得UTF-8在处理多种语言的文本时具有很好的效率,同时也兼容了大部分早期基于ASCII的系统。 在VB6(Visual ...
UTF-8是一种变长的字符编码,它使用1到4个字节来表示一个Unicode字符,其中ASCII字符(0-127)只需要1个字节。UTF-16则通常使用2个字节,对于大部分的Unicode字符,但对超出基本多文种平面(BMP)的字符,如表情符号...
UTF-8是一种变长的Unicode编码,它可以表示世界上几乎所有的字符,包括中文字符,而且在ASCII字符集内与ASCII兼容。GB2312,全称为《信息技术汉字编码及交换码》,是中国大陆的简体中文字符集,主要包含常用汉字和...
它在ASCII字符集内可读,但在大多数现代应用中已被UTF-8所取代。 文件名称“UNICODE_2.00”可能指的是该编码转换工具的一个版本,特别是与Unicode相关的更新,版本号为2.00,通常意味着该软件进行了功能增强或错误...
在Web开发过程中,特别是使用ASP与JavaScript进行交互时,经常会遇到字符集转换的问题,导致中文字符显示为乱码。本文将深入探讨如何通过自定义的编码与解码函数(`bm()` 和 `jm()`)来处理ASP_UTF8环境下的中文乱码...
在PHP编程中,汉字转换为UTF-8编码是一项常见的任务,特别是在处理中文字符集时。本文将详细解析如何使用自定义函数实现这个过程,并提供两个关键函数:`htou()` 和 `utf8_unicode()`。 首先,`htou()` 函数用于将...
在实现gb2312到utf-8的转换时,我们需要注意 gb2312的编码范围为2121H-777EH,对于ASCII字符它也使用两字节表示。同时,我们也需要注意UNICODE是一种两字节的全编码,对于ASCII字符它也使用两字节表示。 本文提供了...
UTF8编码是目前最广泛使用的字符编码标准,它能表示几乎所有的Unicode字符,包括汉字。在易语言中处理UTF8编码的数据,特别是进行解码,是一项重要的技能。 易语言UTF8解码源码主要涉及以下知识点: 1. **字符编码...