2009-02-26 15 views

答えて

22

は、例えば

http://ca.php.net/ord

ORD関数を使用します。

<?php 
$var = "nÖ§9q1Fª£ˆæÓ§Œ_»—Ló]j"; 

for($i = 0; $i < strlen($var); $i++) 
{ 
    echo ord($var[$i])."<br/>"; 
} 
?> 
+1

@ YzmirRamirez:文字長さではなく、バイト長を必要とするバイトを表示するため、 'mb_strlen'を使うのは実際にはバグです。 – Ped7g

+0

あなたは正しい@Pad7gです。私は一般的にmb_関数を使い、上記のstrlen呼び出しを見た。しかし、以下のより良い答えは、ループを必要としないことです。 –

3

Ord()トリックはASCII文字セットで行います。しかし、マルチバイト文字列(UTF-8など)に戸惑う場合は、運が悪いので、自分でハックする必要があります。あなたが進値について話している場合は

4

、これはあなたのために行う必要があります。

$value = unpack('H*', "Stack"); 
echo $value[1]; 

Reference

+0

これはすばらしい答えです。 'for 'ループや個々の文字を使ったほうがはるかに優れています。 – miken32

19

あなたは整数コードの配列として文字列を取得したい場合には、素敵なワンがありますライナー:

unpack('C*', $string) 

注意してください、結果の配列は0からではなく、1からインデックスされます!

+0

+1 - _exactly_必要なもの – Hobo

関連する問題