2012-10-20 31 views
6
var test = String.fromCharCode(112, 108, 97, 105, 110); 
document.write(test); 

// Output: plain 

Có mã PHP nào hoạt động như String.fromCharCode() của javascript không?Chức năng Javascript trong PHP fromCharCode()

+0

http://blog.stanislavstankov.com/2010/02/equal-function-string-fromcharcode-in-php/ –

+2

Bạn [đầu tiên được hỏi ' String.charCodeAt'] (http://stackoverflow.com/questions/12989697/using-php-to-find-unicode-of-a-character) và bây giờ bạn đang yêu cầu đảo ngược? –

+0

[** Điều này **] (http://stackoverflow.com/questions/6058394/unicode-character-in-php-string) là những gì bạn muốn, vì 'String.fromCharCode' về cơ bản là UTF-16 –

Trả lời

4

Thử chr() chức năng:

Trả về một chuỗi một nhân vật có chứa các nhân vật theo quy định của ascii.

http://php.net/manual/en/function.chr.php

+2

Tôi không nghĩ rằng bạn đang xử lý UTF-16, nơi '23416 ->" 學 "' –

0

Chức năng chr() thực hiện điều này, tuy nhiên nó chỉ mất một ký tự cùng một lúc. Kể từ khi tôi không biết làm thế nào để cho phép một số biến của tham số trong PHP, tôi chỉ có thể đề nghị này:

function chrs($codes) { 
    $ret = ""; 
    foreach($codes as $c) $ret .= chr($c); 
    return $ret; 
} 
// to call: 
chrs(Array(112,108,97,105,110)); 
1

The live demo.

$output = implode(array_map('chr', array(112, 108, 97, 105, 110))); 

Và bạn có thể làm một hàm:

function str_fromcharcode() { 
    return implode(array_map('chr', func_get_args())); 
} 

// usage 
$output = str_fromcharcode(112, 108, 97, 105, 110); 
+1

Tôi không nghĩ rằng bạn đang xử lý UTF-16, nơi '23416 ->" 學 "' –

+0

'String.fromCharCode (23476)' là '" 宴 "' – xdazz

+0

Có tôi đã sai vì lỗi đánh máy –

3

PHP có chức năng chr sẽ trả về chuỗi ký tự một ký tự ining nhân vật theo quy định của ascii

Để phù hợp với kịch bản phong cách java của bạn, bạn có thể tạo lớp riêng bạn

$string = String::fromCharCode(112, 108, 97, 105, 110); 
print($string); 

Lớp Dùng

class String { 
    public static function fromCharCode() { 
     return array_reduce(func_get_args(),function($a,$b){$a.=chr($b);return $a;}); 
    } 
} 
+1

Tôi không nghĩ rằng bạn đang xử lý UTF-16, nơi '23416 ->"學 "' –

+0

'String.fromCharCode (23476)' là '宴' – Baba

+0

Bạn không thấy chỉnh sửa của tôi. 'String.fromCharCode (23416) ==" 學 "' –

1

Hãy thử một cái gì đó như thế này ..

// usage: echo fromCharCode(72, 69, 76, 76, 79) 
    function fromCharCode(){ 
     $output = ''; 
     $chars = func_get_args(); 
     foreach($chars as $char){ 
     $output .= chr((int) $char); 
     } 
     return $output; 
    }