2012-10-20 10 views
5

Mögliche Duplizieren zu finden: in javascript
How to get code point number for a given character in a utf-8 string?PHP Verwendung von Unicode eines Zeichens

Ich habe einen Beispielcode:

var str = "HELLO WORLD"; 
var n = str.charCodeAt(0); 

Das gibt 72

Wie kann ich? Machen Sie das in PHP gemacht?

//Code to Character 
echo chr(65); 

//Character to Code 
echo ord('A'); 

Unicode

Aber da diese func: Dies wird dazu beitragen

+2

Uhhhmmmm 72 ist Unicode? – PeeHaa

+1

'var_dump (ord ('H'));' Nicht Unicode wie angefordert, aber ich bin nicht sicher, Sie wissen, was Unicode bedeutet;) – PeeHaa

+0

Meinst du den [Codepunkt] (http://en.wikipedia.org/wiki/Code_point)? – Gumbo

Antwort

1

Das Äquivalent der oben würde

$str = "HELLO WORLD"; 
$n = ord($str[0]); 
+3

Ich denke nicht, dass das für Unicode funktioniert, versuchen Sie:' $ str = "學"; $ n = ord ($ str [0]); ' – AndreKR

5

ASCII

sein tion Arbeit für ASCII, Unicode:

function uniord($u) { 
    $k = mb_convert_encoding($u, 'UCS-2LE', 'UTF-8'); 
    $k1 = ord(substr($k, 0, 1)); 
    $k2 = ord(substr($k, 1, 1)); 
    return $k2 * 256 + $k1; 
} 

echo uniord('ب'); 
0

Unicode bewusst Sie versuchen diese sein sollte (http://us.php.net/manual/en/function.ord.php)

function uniord($u) { 
    $k = mb_convert_encoding($u, 'UCS-2LE', 'UTF-8'); 
    $k1 = ord(substr($k, 0, 1)); 
    $k2 = ord(substr($k, 1, 1)); 
    return $k2 * 256 + $k1; 
} 
5

prüfen this contributed note in der Dokumentation hier:

http://www.php.net/manual/en/function.ord.php

Es gibt eine Funktion, die den UTF-8-Wert zurückgibt, das, was ich nehme an, Sie wollen.

+0

@AndreKR Ah, danke! Ich habe nur durch den HTML-Code der Seite gesucht, um den Anker zu finden, aber Sie haben mich dazu gedrängt :-D –

+1

JavaScript's 'charCodeAt' scheint den UTF-16 Wert zurückzugeben, zumindest in Chrome. –

Verwandte Themen