Làm cách nào để lấy ASCII của một ký tự trong PHP?

Mã tiêu chuẩn của Mỹ để trao đổi thông tin là một bộ đặc biệt gồm 255 số đánh giá các chữ cái, ký hiệu và hành động được sử dụng trong hầu hết các máy tính. Ví dụ: 74 là "J", 106 là "j", 123 là { và 32 là khoảng trắng. Để chuyển đổi sang ASCII từ các ký tự văn bản, bạn nên sử dụng hàm chr(), hàm này lấy một giá trị ASCII làm tham số duy nhất và trả về văn bản tương đương nếu có. Hàm ord() thì ngược lại - nó nhận vào một chuỗi và trả về giá trị ASCII tương đương

Ví dụ


Điều đó sẽ xuất ra như sau

The second letter in the string is S
ASCII number 109 is equivalent to m

Bạn muốn học PHP 7?

Hacking with PHP đã được cập nhật đầy đủ cho PHP 7 và hiện có sẵn dưới dạng PDF có thể tải xuống. Nhận hơn 1200 trang học PHP thực hành ngay hôm nay

Nếu điều này hữu ích, vui lòng dành chút thời gian để nói với những người khác về Hacking với PHP bằng cách tweet về nó

Want terminal colors in command line php scripts?

This should take care of that.

$_colors = array(
        'LIGHT_RED'      => "[1;31m",
        'LIGHT_GREEN'     => "[1;32m",
        'YELLOW'     => "[1;33m",
        'LIGHT_BLUE'     => "[1;34m",
        'MAGENTA'     => "[1;35m",
        'LIGHT_CYAN'     => "[1;36m",
        'WHITE'     => "[1;37m",
        'NORMAL'     => "[0m",
        'BLACK'     => "[0;30m",
        'RED'         => "[0;31m",
        'GREEN'     => "[0;32m",
        'BROWN'     => "[0;33m",
        'BLUE'         => "[0;34m",
        'CYAN'         => "[0;36m",
        'BOLD'         => "[1m",
        'UNDERSCORE'     => "[4m",
        'REVERSE'     => "[7m",

);

function termcolored($text, $color="NORMAL", $back=1){
    global $_colors;
    $out = $_colors["$color"];
    if($out == ""){ $out = "[0m"; }
    if($back){
        return chr(27)."$out$text".chr(27).chr(27)."[0m".chr(27);
    }else{
        echo chr(27)."$out$text".chr(27).chr(27)."[0m".chr(27);
    }//fi
}// end function

________số 8_______

Regarding character sets, and whether or not this is "ASCII". Firstly, there is no such thing as "8-bit ASCII", so if it were ASCII it would only ever return integers up to 127. 8-bit ASCII-compatible encodings include the ISO 8859 family of encodings, which map various common characters to the values from 128 to 255. UTF-8 is also designed so that characters representable in 7-bit ASCII are coded the same; byte values higher than 127 in a UTF-8 string represent the beginning of a multi-byte character.

In fact, like most of PHP's string functions, this function isn't doing anything to do with character encoding at all - it is just interpreting a binary byte from a string as an unsigned integer. That is, ord(chr(200)) will always return 200, but what character chr(200) *means* will vary depending on what character encoding it is *interpreted* as part of (e.g. during display).

A technically correct description would be "Returns an integer representation of the first byte of a string, from 0 to 255. For single-byte encodings such as (7-bit) ASCII and the ISO 8859 family, this will correspond to the first character, and will be the position of that character in the encoding's mapping table. For multi-byte encodings, such as UTF-8 or UTF-16, the byte may not represent a complete character."

The link to asciitable.com should also be replaced by one which explains what character encoding it is displaying, as "Extended ASCII" is an ambiguous and misleading name.

❮ Tham chiếu chuỗi PHP

Ví dụ

Trả về giá trị ASCII của "h"

tiếng vang ord("h"). "
“;
echo ord("xin chào"). "
“;
?>

Tự mình thử »


Định nghĩa và cách sử dụng

Hàm ord() trả về giá trị ASCII của ký tự đầu tiên của chuỗi


cú pháp

Giá trị tham số

Tham sốChuỗi mô tảBắt buộc. Chuỗi để nhận giá trị ASCII từ

chi tiết kỹ thuật

Giá trị trả về. Trả về giá trị ASCII dưới dạng số nguyênPhiên bản PHP. 4+
❮ Tham chiếu chuỗi PHP

Để lấy giá trị ASCII của một ký tự trong PHP, hãy gọi hàm ord() Chuỗi và chuyển ký tự (dưới dạng chuỗi) làm đối số cho hàm

ord() Hàm chuỗi lấy chuỗi làm đối số và trả về byte đầu tiên của chuỗi dưới dạng giá trị từ 0 đến 255

ví dụ

Nhận giá trị ASCII của một ký tự

Trong ví dụ sau, chúng ta lấy giá trị ASCII của ký tự m bằng cách sử dụng hàm ord()

Chương trình PHP

<?php
$ch = "m";
$ascii = ord($ch);
printf("ASCII : %d", $ascii);
?>

đầu ra

Làm cách nào để lấy ASCII của một ký tự trong PHP?

Phần kết luận

Trong Hướng dẫn PHP này, chúng ta đã học cách chuyển đổi mảng thành chuỗi CSV, sử dụng hàm implode(), với các ví dụ

Làm cách nào để chuyển đổi số thập phân thành ASCII trong PHP?

Hàm chr được sử dụng để chuyển đổi số thứ tự (thập phân) thành ký tự ASCII tương đương . function myParseString($str) { $output = ''; . == sai) { đầu ra $.

Hàm nào được sử dụng để truy xuất giá trị ASCII của ký tự?

Hàm ASCII() trả về giá trị ASCII cho ký tự cụ thể.

Giá trị ASCII của A đến Z là gì?

Giá trị ASCII của bảng chữ cái viết thường là từ 97 đến 122 . Và, giá trị ASCII của bảng chữ cái viết hoa là từ 65 đến 90.

Làm cách nào để chuyển đổi hex sang ASCII PHP?

Để chuyển đổi một chuỗi hex thành chuỗi ký tự ASCII, chúng ta có thể dùng hàm pack() có định dạng "H*" . mã PHP. ? .