精华内容
下载资源
问答
  • CDATA

    2019-08-08 03:23:00
    只有 CDATA 区段(CDATA section)中的文本会被解析器忽略。 Parsed Data XML 解析器通常会解析 XML 文档中所有的文本。 当某个 XML 元素被解析时,其标签之间的文本也会被解析: <message>此文本也会...

    所有 XML 文档中的文本均会被解析器解析。

    只有 CDATA 区段(CDATA section)中的文本会被解析器忽略。

    Parsed Data

    XML 解析器通常会解析 XML 文档中所有的文本。

    当某个 XML 元素被解析时,其标签之间的文本也会被解析:

    <message>此文本也会被解析</message>

    解析器之所以这么做是因为 XML 元素可包含其他元素,就像这个例子中,其中的 <name> 元素包含着另外的两个元素(first 和 last):

    <name><first>Bill</first><last>Gates</last></name>

    而解析器会把它分解为像这样的子元素:

    <name>

    <first>Bill</first>

    <last>Gates</last>

    </name>

    转义字符

    非法的 XML 字符必须被替换为实体引用(entity reference)。

    假如您在 XML 文档中放置了一个类似 "<" 字符,那么这个文档会产生一个错误,这是因为解析器会把它解释为新元素的开始。因此你不能这样写:

    <message>if salary < 1000 then</message>

    为了避免此类错误,需要把字符 "<" 替换为实体引用,就像这样:

    <message>if salary &lt; 1000 then</message>

    在 XML 中有 5 个预定义的实体引用:

    &lt;<小于
    &gt;>大于
    &amp;&和号
    &apos;'省略号
    &quot;"引号

    注释:严格地讲,在 XML 中仅有字符 "<"和"&" 是非法的。省略号、引号和大于号是合法的,但是把它们替换为实体引用是个好的习惯。

    CDATA

    CDATA 内部的所有东西都会被解析器忽略。

    假如文本中包含了大量的 "<" 和 "&" 字符 - 就像编程代码中经常出现的情况一样 - 那么这个 XML 元素就可以被定义为一个 CDATA 部分。

    CDATA 区段开始于 "<![CDATA[",结束于 "]]>"

    <script>

    <![CDATA[

    function matchwo(a,b)

    {

    if (a < b && a < 0)

    {

    return 1

    }

    else

    {

    return 0

    }

    }

    ]]>

    </script>

    在上面的例子中,在 CDATA 区段中的所有东西都会被解析器忽略。

    关于 CDATA 区段的注释:

    CDATA 区段不能包含字符串 "]]>",所以,CDATA 区段的嵌套是不被允许的。

    同时也需要确保在 "]]>" 字符串中没有空格或折行。

    正象我们前面所说,我们可以把XML文件中除标记以外的所有内容都看作是字符数据,而把标记中的所有内容都看作置标。不过,也有一个例外。在一个特殊的标记CDATA下,所有的标记、实体引用都被忽略,而被XML处理程序一视同仁地当作字符数据看待。CDATA的形式如下:
    〈![CDATA[
    文本内容
    ]]〉

    聪明的读者可能已经猜出,CDATA的文本内容中是不能出现字符串“]]〉”的,因为它代表了CDATA数据块的结束标志。

    在前面讲字符数据时,我们谈到过实体引用。可想而知,当你的文本数据中包含大量特殊符号时,你不得不通篇地使用实体引用,把本来很清晰的一段文字搞得乱七八糟。例如在前面的例子中,我们在“示例”元素中放入了一个XML程序。这时,如果没有CDATA,那么麻烦来了。这个元素需要写成下面的样子:

    <示例>
                      &lt;联系人&gt;
                      &lt;姓名&gt;张三&lt;/姓名&gt;
                      &lt;EMAIL&gt;zhang@aaa.com&lt;/EMAIL&gt;
                      &lt;/联系人&gt;
    </示例>

    哇,你要把所有的标记都用实体引用改写,最后写出来的东西连你自己都看不懂了。

    为了避免这种不便,你可以把这些字符数据放在一个CDATA数据块中,这样不管它看上去是一个标记还是一个实体引用,这些数据统统被当作字符照单全收。于是,上面的元素就可以写为这个样子:

    <示例>
                  <![CDATA[
                      <联系人>
                      <姓名>张三</姓名>
                      <EMAIL>zhang@aaa.com</EMAIL>
                      </联系人>
                  ]]>
    </示例>

    清楚多了吧!

     

    转载于:https://www.cnblogs.com/dyc988/archive/2008/07/22/1248456.html

    展开全文
  • CDATA

    2008-05-27 15:19:00
    XHTML的第二个改变是使用CDATA段。XML中的CDATA段用于声明不应被解析为标签的文本(XHTML也是如此),这样就可以使用特殊字符,如小于()、大于(>)、和号(&)和双引号("),而不必使用它们的字符实体。考虑下面...

    XHTML的第二个改变是使用CDATA段。XML中的CDATA段用于声明不应被解析为标签的文本(XHTML也是如此),这样就可以使用特殊字符,如小于(<)、大于(>)、和号(&)和双引号("),而不必使用它们的字符实体。考虑下面的代码:

    这个函数相当简单,它比较数字ab,然后显示消息说明它们的关系。但是,在XHTML中,这段代码是无效的,因为它使用了三个特殊符号,即小于、大于和双引号。要修正这个问题,必须分别用这三个字符的XML实体&lt;&gt;&quot;替换它们:

    这段代码存在两个问题。首先,开发者不习惯用XML实体编写代码。这使代码很难读懂。其次,在JavaScript中,这种代码实际上将视为有语法错,因为解释程序不知道XML实体的意思。用CDATA段即可以以常规形式(即易读的语法)编写JavaScript代码。正式加入CDATA段的方法如下:

    虽然这是正式方式,但还要记住,大多数浏览器都不完全支持XHTML,这就带来主要问题,即这在JavaScript中是个语法错误,因为大多数浏览器还不认识CDATA段。

    当前使用的解决方案模仿了“对旧浏览器隐藏”代码的方法。使用单行的JavaScript注释,可在不影响代码语法的情况下嵌入CDATA段:

    现在,这段代码在不支持XHTML的浏览器中也可运行。

    type特性一样,随着开发者为浏览器中的XHTML准备更好的支持,CDATA的这种用法也越来越流行。但是,为避免CDATA的问题,最好还是用外部文件引入JavaScript代码。

    展开全文
  • 类型化的cdata 通过PHP类型使用FFI \ CData 安装 composer require sj-i/typed-cdata 要求 PHP 7.4+(NTS / ZTS) 64位Linux x86_64 FFI扩展 执照 麻省理工学院
  • xml CDATA

    2018-09-03 15:51:00
    只有 CDATA 区段(CDATA section)中的文本会被解析器忽略。  PCDATA 指的是被解析的字符数据(Parsed Character Data)。XML 解析器通常会解析 XML 文档中所有的文本。当某个 XML 元素被解析时,其标签之间的文本...

      所有 XML 文档中的文本均会被解析器解析。只有 CDATA 区段(CDATA section)中的文本会被解析器忽略。

      PCDATA 指的是被解析的字符数据(Parsed Character Data)。XML 解析器通常会解析 XML 文档中所有的文本。当某个 XML 元素被解析时,其标签之间的文本也会被解析.

    CDATA

      CDATA 指的是不应由 XML 解析器进行解析的文本数据(Unparsed Character Data)。

      在 XML 元素中,"<" 和 "&" 是非法的。

      "<" 会产生错误,因为解析器会把该字符解释为新元素的开始。

      "&" 也会产生错误,因为解析器会把该字符解释为字符实体的开始。

      某些文本,比如 JavaScript 代码,包含大量 "<" 或 "&" 字符。为了避免错误,可以将脚本代码定义为 CDATA。

      CDATA 部分中的所有内容都会被解析器忽略。

      CDATA 部分由 "<![CDATA[" 开始,由 "]]>" 结束:

    <script>
    <![CDATA[
    function matchwo(a,b)
    {
    if (a < b && a < 0) then
      {
      return 1;
      }
    else
      {
      return 0;
      }
    }
    ]]>
    </script>
    

       在上面的例子中,解析器会忽略 CDATA 部分中的所有内容。

    转载于:https://www.cnblogs.com/konglingxi/p/9578938.html

    展开全文
  • XML CDATA是什么?

    2020-10-31 04:03:04
    主要为大家介绍下XML CDATA是什么,学习xml的朋友可以参考下
  • 页里面 CDATA的作用说明
  • XML CDATA

    2018-07-10 09:15:49
    只有 CDATA 区段中的文本会被解析器忽略。PCDATA - 被解析的字符数据XML 解析器通常会解析 XML 文档中所有的文本。当某个 XML 元素被解析时,其标签之间的文本也会被解析:&lt;message&gt;This text is also...

    XML 文档中的所有文本均会被解析器解析。

    只有 CDATA 区段中的文本会被解析器忽略。


    PCDATA - 被解析的字符数据

    XML 解析器通常会解析 XML 文档中所有的文本。

    当某个 XML 元素被解析时,其标签之间的文本也会被解析:

    <message> This text is also parsed</message>

    解析器之所以这么做是因为 XML 元素可包含其他元素,就像这个实例中,其中的 <name> 元素包含着另外的两个元素(first 和 last):

    <name><first>Bill</first><last>Gates</last></name>

    而解析器会把它分解为像这样的子元素:

    <name>
    <first>Bill</first>
    <last>Gates</last>
    < /name>

    解析字符数据(PCDATA)是 XML 解析器解析的文本数据使用的一个术语。


    CDATA - (未解析)字符数据

    术语 CDATA 是不应该由 XML 解析器解析的文本数据。

    像 "<" 和 "&" 字符在 XML 元素中都是非法的。

    "<" 会产生错误,因为解析器会把该字符解释为新元素的开始。

    "&" 会产生错误,因为解析器会把该字符解释为字符实体的开始。

    某些文本,比如 JavaScript 代码,包含大量 "<" 或 "&" 字符。为了避免错误,可以将脚本代码定义为 CDATA。

    CDATA 部分中的所有内容都会被解析器忽略。

    CDATA 部分由 "<![CDATA[" 开始,由 "]]>" 结束:

    <script>
    < ![CDATA[
    function matchwo(a,b)
    {
    if (a < b && a < 0) then
    {
    return 1;
    }
    else
    {
    return 0;
    }
    }
    ]]>
    < /script>

    在上面的实例中,解析器会忽略 CDATA 部分中的所有内容。

    关于 CDATA 部分的注释:

    CDATA 部分不能包含字符串 "]]>"。也不允许嵌套的 CDATA 部分。

    标记 CDATA 部分结尾的 "]]>" 不能包含空格或换行。

    展开全文
  • CDATA了解

    2019-08-19 20:47:57
    术语 CDATA 指的是不应由 XML 解析器进行解析的文本数据(Unparsed Character Data)。 在xml中英文问号“?”是可以被正常解析的,但是以下这几种符号是不能正常解析的:分别是“&”、“<”、“>”、“’...
  • 主要介绍了php操作xml入门之cdata区段,分析了CDATA的功能及用法,需要的朋友可以参考下
  • xml的cdata

    2020-05-21 09:22:36
    术语CDATA指字符数据。CDATA定义为文本块,但识别为标记. 预定义实体的同位素;,密度,并且与放大器;需要打字并且通常难以阅读的标记。在这种情况下,CDATA部分都可以使用。通过使用CDATA节,你是指挥,该文件的具体...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 91,100
精华内容 36,440
关键字:

cdata