如何将字符串转化成ascii码?
    如:$str=abcdefghiz      还有汉字怎样转化呢?
    

解决方案 »

  1.   

    返回字符串中首字符的ASCII码值的函数(php)
    http://hi.baidu.com/w3cphp/blog/item/313b0fef474548ecce1b3ed6.html
      

  2.   

    纯字符串的好办<?PHP
    $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
      

  3.   

    $str = "abcdefg";
    $arr = str_split($str);
    foreach($arr as $key){
    echo $key."的asii的码值是:".ord($key)."<br />";
    }遍历取出每个字符串,然后对它们进行assii转换
      

  4.   


    <?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);
    ?>
      

  5.   

    +1
    foreach比array_walk效率高啊。。
      

  6.   


    遍历数组,并对数组中的值运算,array_walk的效率就比foreach高了。http://blog.csdn.net/jayxujia123/archive/2010/11/05/5990168.aspx
      

  7.   


    -------------------------------------------
    编译不能通过啊Call to undefined function mb_strlen() in D:\wamp\Apache2.2\htdocs\First\First.php on line 8
      

  8.   

    你的php版本低了,php5以上都默认使用mb_xxxx()函数了。