>  기사  >  백엔드 개발  >  PHP 문자열 변환 함수는 무엇입니까?

PHP 문자열 변환 함수는 무엇입니까?

藏色散人
藏色散人원래의
2020-11-25 09:50:451865검색

PHP 문자열 변환 함수에는 다음이 포함됩니다. 1. 백슬래시를 사용하여 주어진 문자열의 특정 목록에 속하는 문자를 이스케이프 처리하는 함수 2. 백슬래시를 사용하여 문자열을 인용하는 addslashes 함수 3. bin2hex 함수, 문자열의 바이너리 변환 문자열을 16진수 문자열로 바꾸는 등의 작업을 수행합니다.

PHP 문자열 변환 함수는 무엇입니까?

권장 사항: "PHP Video Tutorial"

PHP 문자열 변환 기능은 다음과 같습니다.

addcslashes: 백슬래시를 사용하여 C 언어 스타일로 지정된 문자열을 이스케이프합니다. 이 함수는 두 개의 매개변수를 받습니다. 첫 번째는 이스케이프해야 하는 문자 목록입니다. 이 함수는 이스케이프된 문자열을 반환합니다. 이는 문자 목록의 문자 앞에 백슬래시가 붙습니다. 이스케이프 문자 목록에 n 및 r과 같은 문자가 포함된 경우 C 언어 스타일로 변환되고, ASCII 코드가 32보다 낮고 126보다 큰 영숫자가 아닌 다른 문자는 8진수 표현으로 변환됩니다. 이스케이프 목록을 정의할 때 두 문자 사이에 두 개의 점을 추가하여 범위를 표현할 수 있습니다. 이 방법을 사용할 경우 정의된 범위의 모든 문자를 이스케이프할지 여부를 지워야 합니다. 설정된 범위의 끝 문자의 ASCII 코드가 시작 문자보다 낮을 경우 경고가 생성되고 대신 시작 문자, 끝 문자 및 그 안의 모든 문자가 생성되지 않습니다. 하나씩 탈출하세요.

addslashes: 백슬래시를 사용하여 문자열을 인용하고, 이스케이프할 문자열인 매개변수를 받고, 이스케이프된 문자열을 반환합니다. 이스케이프의 목적은 백슬래시와 같은 특정 문자 앞에 특정 문자를 추가하는 것입니다. 작은따옴표, 큰따옴표, 백슬래시 및 NUL 문자를 포함합니다.

bin2hex: 문자열의 2진수 문자열을 16진수 문자열로 변환합니다. 변환에서는 높은 니블이 먼저 사용되는 바이트 모드를 사용합니다. 단일 문자에 대해 dechex(ord())를 수행하는 것과 동일합니다.

chr: 지정된 문자를 반환하고, 매개변수를 받고, 이 매개변수에 해당하는 ASCII 코드로 지정된 단일 문자를 반환합니다. 이는 ord()와 상보적입니다. 전달된 값이 256보다 크면 숫자 모듈로 256에 해당하는 ASCII 코드로 지정된 단일 문자가 반환됩니다.

convert_cyr_string: 한 문자 집합에서 다른 문자 집합으로 키릴 문자를 변환합니다. 변환할 문자열, 원래 문자 집합 유형, 새 문자 집합 유형이라는 세 가지 매개 변수를 허용하고 변환된 문자열을 반환합니다. 문자 집합 유형은 단일 문자, k(koi8-r), w(windows-1251), i(iso8859-5), a(x-cp866), d(x-cp866), m(x-mac-)입니다. 키릴 문자) .

convert_uudecode: uuencode로 인코딩된 문자열을 디코딩하고, uuencode로 인코딩된 문자열을 수락하고, 디코딩에 실패하면 false를 반환합니다.

convert_uuencode: uuencode 알고리즘을 사용하여 문자열을 인코딩하고, 인코딩할 문자열을 수락하고, 인코딩에 실패하면 false를 반환합니다.

hex2bin: 16진수 문자열을 2진수 문자열로 변환하고 16진수 문자열을 허용하며 주어진 문자열의 변환된 2진수 표현을 반환합니다. 이 방법은 16진수를 2진수로 변환하지 않습니다. bin2hex와 역수입니다.

html_entity_decode: HTML 엔터티를 적절한 문자로 변환합니다. 세 개의 매개변수를 허용합니다. 첫 번째는 변환할 필수 문자열이고, 두 번째는 따옴표 처리 방법과 사용할 문서 유형을 지정하는 선택적 플래그 비트입니다. 기본값은 ENT_COMPAT|ENT_HTML401이고, 세 번째 매개변수는 선택 사항입니다. 문자를 변환할 때 사용할 인코딩을 지정합니다. 생략하면 PHP 5.6부터 php.ini 구성 항목 default-charset의 값이 기본값이 됩니다. PHP 5.4 및 5.5에서는 기본값이 UTF-8이고 이전 기본값은 ISO-8859-1입니다. 변환된 문자를 반환합니다.

htmlentities: 문자를 HTML 이스케이프 문자로 변환합니다. 4개의 매개변수를 허용합니다. 첫 번째 매개변수는 변환할 필수 문자열입니다. 두 번째 및 세 번째 매개변수는 html_entity_decode 함수와 동일합니다. 네 번째 매개변수는 false인 경우 변환되지 않습니다. 그렇지 않은 경우 HTML 엔터티는 모두 변환되며 기본값은 true이고 변환된 문자가 반환됩니다. 변환할 문자열에 지정된 인코딩의 잘못된 단위 시퀀스가 ​​포함되어 있고 ENT_IGNORE 또는 ENT_SUBSTITUTE 태그가 설정되지 않은 경우 빈 문자열이 반환됩니다. 반환됩니다.

htmlspecialchars_decode:将特殊的HTML实体转为普通字符,接受两个参数,第一个为必需的要转换的字符串,第二个为可选的标记位,指定了如何处理引号和使用哪种文档类型,默认值为ENT_COMPAT|ENT_HTML401。返回转换后的字符串。被转换的实体有&, " (没有设置ENT_NOQUOTES 时), ' (设置了 ENT_QUOTES 时), < 以及>。

htmlspecialchars:将特殊字符转换为HTML实体,接受四个参数,与htmlentities函数相同。

ord:返回字符串的ascii码值,接受一个要转换的字符串,返回字符串的ascii值。

quoted_printable_decode:将quoted-printable字符串转换成8bit字符串。

quoted_printable_encode:将8bit字符串转换成quoted-printable字符串。

str_rot13:对字符串执行ROT13转换,忽略非字母表中的字符。如果传入的是编码后的字符,则返回的会是原始字符。

stripcslashes:反引用一个使用addcslashes()转义的字符串。

quotemeta:转义元字符集,将. \ + * ? [ ^ ] ( $ )字符前加反斜杠。如果输入的字符串为空则返回false。

<?php
echo addcslashes("zoo[&#39;.&#39;]", &#39;A..z&#39;)."\n";
echo stripcslashes("\z\o\o\[&#39;.&#39;\]")."\n";
echo addcslashes("zoo[&#39;.&#39;]", &#39;z..A&#39;)."\n";
echo addslashes("what&#39;s this?")."\n";
echo addslashes("This is a NULL character: \x00")."\n";
echo bin2hex("Hello")."\n";
echo dechex(ord(&#39;H&#39;)).dechex(ord(&#39;e&#39;)).dechex(ord(&#39;l&#39;)).dechex(ord(&#39;l&#39;)).dechex(ord(&#39;o&#39;))."\n";
echo chr(65)."\n";
echo chr(321)."\n";
echo convert_uuencode("hellophp");
echo convert_uudecode("(:&5L;&]P:&#39;``
`")."\n";
echo hex2bin("48656c6c6f")."\n";
$orig = "\"hello\" <b>world</b>";
$a = htmlentities($orig);
$b = html_entity_decode($a);
echo $a."\n"; // &quot;hello&quot; &lt;b&gt;world&lt;/b&gt;
echo $b."\n"; // "hello" <b>world</b>
$str = "\x8F!!!";
echo htmlentities($str, ENT_QUOTES, "UTF-8")."\n";//空字符串
echo htmlentities($str, ENT_QUOTES | ENT_IGNORE, "UTF-8")."\n";//!!!
$str = "<p>&lt;hello&gt;&quot;world&quot;</p>\n";
echo htmlspecialchars_decode($str);//<p><hello>"world"</p>
echo htmlspecialchars_decode($str, ENT_NOQUOTES);//<p><hello>&quot;world&quot;</p>
echo htmlspecialchars("<p&#39;hello&#39;>world</p>", ENT_QUOTES)."\n";//&lt;p&#039;hello&#039;&gt;world&lt;/p&gt;
echo ord("2")."\n";
echo str_rot13("hello,world!")."\n";
echo str_rot13("uryyb,jbeyq!")."$n"; = "HelloWorld!\n";
echo quotemeta("hello?")."\n";
?>

위 내용은 PHP 문자열 변환 함수는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.