如何将字符串转化成ascii码?
如:$str=abcdefghiz 还有汉字怎样转化呢?
如:$str=abcdefghiz 还有汉字怎样转化呢?
解决方案 »
- Fatal error: Allowed memory size of 83886080 bytes exhausted...
- 近日,我在论坛上发表了“低薪诚聘PHP程序员(广州)”,招了不少攻击。说实话,我不知道你们能够拿多少,如果没有过万的话,请不要指责。
- ★★★ 一个PHP正则提取的问题,有点急!!!帮忙看下,从一段HTML里面提取 ★★★
- 关于PHP 数据库查询结果的缓存
- php读文本文件乱码
- mysql表1对多关系,批量写数据的问题
- php5出现:using $this when not in object
- 正则表达式问题
- 请问:用php实现下载的代码怎么写?
- 有没有什么工具软件可以管理远程MYSQL数据库?
- php性能测试
- 一个用js操作html标签的问题。高手进来。一般人不会。
http://hi.baidu.com/w3cphp/blog/item/313b0fef474548ecce1b3ed6.html
$str = 'abcdefghiz';
$arr = str_split($str);
function toasc(&$val,$key){
echo $val . " 的ASCII: ".ord($val)."<br />\n" ;
$val = ord($val);
}
array_walk($arr,'toasc') ;
echo '<pre />';
print_r($arr);echo $str .'的ascii码是:'.implode($arr) ;
?>输出:
a 的ASCII: 97
b 的ASCII: 98
c 的ASCII: 99
d 的ASCII: 100
e 的ASCII: 101
f 的ASCII: 102
g 的ASCII: 103
h 的ASCII: 104
i 的ASCII: 105
z 的ASCII: 122Array
(
[0] => 97
[1] => 98
[2] => 99
[3] => 100
[4] => 101
[5] => 102
[6] => 103
[7] => 104
[8] => 105
[9] => 122
)
abcdefghiz的ascii码是:979899100101102103104105122
$arr = str_split($str);
foreach($arr as $key){
echo $key."的asii的码值是:".ord($key)."<br />";
}遍历取出每个字符串,然后对它们进行assii转换
<?PHP
//中文字符转ascii,首先要判断是gbk/gb2312编码还是utf-8编码
//中文gbk/gb2312 每个中文由两个英文字符组成,也就有两个ascii码
//中文utf-8 每个中文由三个英文字符组成,也就有三个ascii码
//下面以GBK编码为例:
$char = 'gbk';
$str = 'abc中文g256bk';//中英文数字混排
$c = mb_strlen($str,$char);
for($i =0;$i<$c;$i++){
$arr[]=mb_substr($str,$i,1,$char);
}
foreach($arr as $i=>$v){
if(preg_match('/\w/i',$v,$match)){
echo $v ."的ascii码:".ord($v)."<br />\n";
$out[] = ord($v);
}else{
echo $v ."的ascii码由两个组成:".ord($v{0})." ".ord($v{1})."<br />\n" ;
$out[] = ord($v{0});
$out[] = ord($v{1});
}
}
echo $str."的ascii码是:".implode($out);
?>
foreach比array_walk效率高啊。。
遍历数组,并对数组中的值运算,array_walk的效率就比foreach高了。http://blog.csdn.net/jayxujia123/archive/2010/11/05/5990168.aspx
-------------------------------------------
编译不能通过啊Call to undefined function mb_strlen() in D:\wamp\Apache2.2\htdocs\First\First.php on line 8