English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP 基礎教程

PHP 高級教程

PHP & MySQL

PHP 参考マニュアル

PHP htmlspecialchars() 関数の用法及び例

   PHP String 문자열 함수 매뉴얼

    htmlspecialchars()関数は特殊文字をHTMLエンティティに変換するために使用されます。

構文

string htmlspecialchars ( string $string[, int $flags = ENT_COMPAT | ENT_HTML401 [, string $encoding = ini_get("default_charset")[, bool $double_encode = true]] )

定義と用法

特殊文字をHTMLエンティティに変換するために使用されます

返却値

変換された文字列(string)を返します。
指定されたエンコードencodingにおいて、stringが無効なコードユニットシーケンスを含んでおり、ENT_IGNOREまたはENT_SUBSTITUTEフラグが設定されていない場合、空の文字列を返却します。

プリミティブな文字は以下の通りです:

  • & (和号)を & に変換します。

  • " (ダブルクォート)を " に変換します。

  • ' (シングルクォート)を ' に変換します。

  • < (より小さい)を < に変換します。

  • > (より大きな)を > に変換します。

주의:特殊なHTMLエンティティを文字に戻すには、以下を使用してください htmlspecialchars_decode() 関数。

パラメータ

序号パラメータと説明
1

string

必需。入力文字列に関する情報を含んでいます

2

flags

オプション。引用符、無効なエンコードの処理方法、および使用するドキュメントタイプを指定します。

利用可能な引用符の種類:

  • ENT_COMPAT - デフォルト。ダブルクォートのみをエンコードします。

  • ENT_QUOTES - ダブルクォートとシングルクォートをエンコードします。

  • ENT_NOQUOTES - 引用符をエンコードしません。

無効なエンコード:

  • ENT_IGNORE - 無効なエンコードを無視するのではなく、関数が空の文字列を返却するようにすることを避けましょう。安全性に影響を与える可能性があるためです。

  • ENT_SUBSTITUTE - 把无效的编码代替成一个指定的带有 Unicode 代替字符 U+지정된 문서 유형의 무효 코드 포인트를 Unicode 대체 문자 U로 대체합니다-8불법적인 인코딩을 지정된 Unicode 대체 문자 U로 대체합니다

  • ) 또는 &#FFFD;의 문자를 반환하는 대신, 빈 문자열을 반환하지 않습니다. - ENT_DISALLOWED+지정된 문서 유형의 무효 코드 포인트를 Unicode 대체 문자 U로 대체합니다-8FFFD(UTF

) 또는 &#FFFD;.

  • .0401 - 사용할 문서 유형의 추가 플래그를 지정. 4기본 설정입니다. HTML로 설정.1 XML로 처리 코드.

  • .05 - ENT_HTML 5 XML로 처리 코드.

  • HTML로 처리 코드.1 - ENT_XML 1 XML로 처리 코드.

  • ENT_XHTML - XHTML로 처리 코드.

3

encoding

이는 변환할 때 사용할 인코딩을 정의하는 선택적 매개변수입니다.

허용 가능한 값:

  • UTF-8 - 기본 설정입니다. ASCII와 호환되는 다중 바이트 문자 8 위드 유니코드

  • ISO-8859-1 - 서유럽

  • ISO-8859-15 - 서유럽(유로 상징을 포함) + ISO-8859-1 중에서 잃어버린 프랑스어와 핀란드어 알파벳)

  • cp866 - DOS용 Cyrillic 문자집합

  • cp1251 - Windows용 Cyrillic 문자집합

  • cp1252 - Windows용 서유럽 문자집합

  • KOI8-R - 러시아어

  • BIG5 - 정체자 중국어, 주로 대만에서 사용

  • GB2312 - 간체자 중국어, 국가 표준 문자집합

  • BIG5-HKSCS - 홍콩 확장된 Big5

  • Shift_JIS - 일본어

  • EUC-JP - 일본어

  • MacRoman - Mac 운영체제에서 사용하는 문자집합

주의:PHP에서 5.4 오래된 버전부터, 인식할 수 없는 문자집합은 ISO-8859-1 대체. PHP 5.4 부터, 인식할 수 없는 문자집합은 UTF-8 대체.

4

double_encode

기존의 HTML 엔티티를 인코딩할지 여부를 지정하는布尔형 값입니다.
  • TRUE - 기본 설정입니다. 모든 엔티티를 변환합니다.

  • FALSE - 기존의 HTML 엔티티에 대해 인코딩하지 않습니다.

온라인 예제

다음 예제를 시도해 보세요, 예약된 문자를 HTML 엔티티로 변환합니다:

<?php
   //예약된 문자를 HTML 엔티티로 변환합니다, 이双重引用호호와 반quote호호를 인코딩합니다
   $input = htmlspecialchars("<a href='https://ko.oldtoolbag.com'>w3codebox</a>", ENT_QUOTES);
   echo $input;
?>
테스트를 보자‹/›

출력 결과-

<a href='https://ko.oldtoolbag.com'>w3codebox</a>

PHP String 문자열 함수 매뉴얼