加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

php中utf-8转unicode

发布时间:2020-05-25 03:33:21 所属栏目:PHP 来源:互联网
导读:public function utf8_unicode($str) {$unicode = array();$values = array();$lookingFor = 1;for ($i = 0; $i strlen( $str ); $i++ ) {$thisValue = ord( $str[ $i ] );if ( $thisValue ord(A) ) {// exclude 0-9if ($thisValue = ord(0) $thisValue = ord

<div class="cnblogs_code">

  utf8_unicode( =  =  = 1</span><span style="color: #0000ff;"&gt;for</span> (<span style="color: #800080;"&gt;$i</span> = 0; <span style="color: #800080;"&gt;$i</span> < <span style="color: #008080;"&gt;strlen</span>( <span style="color: #800080;"&gt;$str</span> ); <span style="color: #800080;"&gt;$i</span>++<span style="color: #000000;"&gt; ) {
    </span><span style="color: #800080;"&gt;$thisValue</span> = <span style="color: #008080;"&gt;ord</span>( <span style="color: #800080;"&gt;$str</span>[ <span style="color: #800080;"&gt;$i</span><span style="color: #000000;"&gt; ] );
    </span><span style="color: #0000ff;"&gt;if</span> ( <span style="color: #800080;"&gt;$thisValue</span> < <span style="color: #008080;"&gt;ord</span>('A'<span style="color: #000000;"&gt;) ) {
        </span><span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; exclude 0-9</span>
        <span style="color: #0000ff;"&gt;if</span> (<span style="color: #800080;"&gt;$thisValue</span> >= <span style="color: #008080;"&gt;ord</span>('0') &amp;&amp; <span style="color: #800080;"&gt;$thisValue</span> <= <span style="color: #008080;"&gt;ord</span>('9'<span style="color: #000000;"&gt;)) {
             </span><span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; number</span>
             <span style="color: #800080;"&gt;$unicode</span>[] = <span style="color: #008080;"&gt;chr</span>(<span style="color: #800080;"&gt;$thisValue</span><span style="color: #000000;"&gt;);
        }
        </span><span style="color: #0000ff;"&gt;else</span><span style="color: #000000;"&gt; {
             </span><span style="color: #800080;"&gt;$unicode</span>[] = '%'.<span style="color: #008080;"&gt;dechex</span>(<span style="color: #800080;"&gt;$thisValue</span><span style="color: #000000;"&gt;);
        }
    } </span><span style="color: #0000ff;"&gt;else</span><span style="color: #000000;"&gt; {
        </span><span style="color: #0000ff;"&gt;if</span> ( <span style="color: #800080;"&gt;$thisValue</span> < 128<span style="color: #000000;"&gt;) {
            </span><span style="color: #800080;"&gt;$unicode</span>[] = <span style="color: #800080;"&gt;$str</span>[ <span style="color: #800080;"&gt;$i</span><span style="color: #000000;"&gt; ];
        } </span><span style="color: #0000ff;"&gt;else</span><span style="color: #000000;"&gt; {
            </span><span style="color: #0000ff;"&gt;if</span> ( <span style="color: #008080;"&gt;count</span>( <span style="color: #800080;"&gt;$values</span> ) == 0<span style="color: #000000;"&gt; ) {
                </span><span style="color: #800080;"&gt;$lookingFor</span> = ( <span style="color: #800080;"&gt;$thisValue</span> < 224 ) ? 2 : 3<span style="color: #000000;"&gt;;
            }
            </span><span style="color: #800080;"&gt;$values</span>[] = <span style="color: #800080;"&gt;$thisValue</span><span style="color: #000000;"&gt;;
            </span><span style="color: #0000ff;"&gt;if</span> ( <span style="color: #008080;"&gt;count</span>( <span style="color: #800080;"&gt;$values</span> ) == <span style="color: #800080;"&gt;$lookingFor</span><span style="color: #000000;"&gt; ) {
                </span><span style="color: #800080;"&gt;$number</span> = ( <span style="color: #800080;"&gt;$lookingFor</span> == 3 ) ?<span style="color: #000000;"&gt;
                    ( ( </span><span style="color: #800080;"&gt;$values</span>[0] % 16 ) * 4096 ) + ( ( <span style="color: #800080;"&gt;$values</span>[1] % 64 ) * 64 ) + ( <span style="color: #800080;"&gt;$values</span>[2] % 64 ):<span style="color: #000000;"&gt;
                    ( ( </span><span style="color: #800080;"&gt;$values</span>[0] % 32 ) * 64 ) + ( <span style="color: #800080;"&gt;$values</span>[1] % 64<span style="color: #000000;"&gt; );
                </span><span style="color: #800080;"&gt;$number</span> = <span style="color: #008080;"&gt;dechex</span>(<span style="color: #800080;"&gt;$number</span><span style="color: #000000;"&gt;);
                </span><span style="color: #800080;"&gt;$unicode</span>[] = (<span style="color: #008080;"&gt;strlen</span>(<span style="color: #800080;"&gt;$number</span>)==3)?"u0".<span style="color: #800080;"&gt;$number</span>:"u".<span style="color: #800080;"&gt;$number</span><span style="color: #000000;"&gt;;
                </span><span style="color: #800080;"&gt;$values</span> = <span style="color: #0000ff;"&gt;array</span><span style="color: #000000;"&gt;();
                </span><span style="color: #800080;"&gt;$lookingFor</span> = 1<span style="color: #000000;"&gt;;
            } </span><span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; if</span>
        } <span style="color: #008000;"&gt;//</span><span style="color: #008000;"&gt; if</span>

<span style="color: #000000;"> }
} <span style="color: #008000;">//<span style="color: #008000;"> for
<span style="color: #0000ff;">return <span style="color: #008080;">implode("",<span style="color: #800080;">$unicode<span style="color: #000000;">);
}

参考文章:

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读