0

0

XSLT如何生成注释和处理指令?

月夜之吻

月夜之吻

发布时间:2025-08-22 15:56:01

|

543人浏览过

|

来源于php中文网

原创

使用和可在XSLT输出中添加注释和处理指令,前者生成格式的注释以提升可读性、调试性,后者生成形式的指令以传递应用程序特定信息;二者均支持静态与动态内容结合,常用于嵌入元数据、样式表链接或系统状态,但需避免注释中出现--、确保PI目标名合法,并注意内容编码与信息冗余问题,最佳实践包括精简内容、封装模板、验证输出及防范敏感信息泄露。

xslt如何生成注释和处理指令?

XSLT在生成输出时,要添加注释(Comment)或处理指令(Processing Instruction),主要通过两个特定的XSLT元素来实现:

用于生成XML注释,而
则用于生成处理指令。这两种机制都允许你将静态文本与动态内容结合,以满足各种输出需求。

解决方案

要生成注释,你可以使用

元素。它的内容就是你希望出现在输出XML或HTML中的注释文本。例如:


    这是一个简单的注释,可能包含一些关于文件生成的信息。

这段XSLT会生成如下的输出:

如果你需要注释内容是动态的,比如包含当前日期或从源XML中提取的数据,你可以这样写:


    由系统于  生成,源数据版本:

这会生成类似这样的注释:

而对于处理指令,你需要使用

元素。它需要一个
name
属性来指定处理指令的目标(Target),而其内容则是处理指令的数据部分。例如,生成一个XML样式表声明:


    type="text/xsl" href="my-style.xsl"

这段XSLT将输出:

同样,处理指令的

name
和内容都可以是动态的。
name
属性可以使用属性值模板(Attribute Value Templates,即大括号
{}
),内容部分则可以像注释一样使用
或其他XSLT指令:



    data-id="" status="processed"

这可能生成:

为什么我们需要在XSLT输出中添加注释或处理指令?

这其实是个很实际的问题,我在日常工作中经常遇到。我们生成XML或HTML,通常是为了给机器消费,但别忘了,还有人类开发者需要阅读,还有其他应用程序需要特定的指示。

对于注释(Comments)而言:

  • 可读性和维护性: 这是最直接的原因。想象一下,你生成了一个复杂的HTML页面,其中某个部分是动态加载的广告位。如果你不留个注释说明“”,那将来另一个开发者接手时,他可能得花上好一会儿才能搞清楚这块空白区域是干嘛的,或者为什么它的内容总是变。对我来说,它就像是代码里的注释,是写给未来自己和同事的“备忘录”。
  • 调试和追踪: 在复杂的转换链中,我有时会加入一些特殊的注释,比如“”。这在排查问题时简直是救命稻草,能快速定位到问题出在哪里。
  • 元数据或非功能性信息: 有些信息不适合作为数据元素,但又需要传递。比如,一个XML文件可能需要在顶部注明“”,这有助于接收方理解文件的上下文。

对于处理指令(Processing Instructions,PIs)而言:

Cursor
Cursor

一个新的IDE,使用AI来帮助您重构、理解、调试和编写代码。

下载
  • 应用程序特定指令: 这是PIs的核心用途。最常见的例子就是
    ,它告诉XML解析器或浏览器这个XML文档应该用哪个XSLT样式表来渲染。你也可以看到像
    这样的,它们指示Web服务器将内嵌的内容作为特定语言的代码来执行。PIs提供了一种“逃逸机制”,让你可以在XML文档中嵌入非XML规范的、针对特定应用程序的指令,而又不破坏XML本身的结构和有效性。
  • 工具集成: 某些工具可能会扫描XML文档中的特定PIs来触发行为或提取配置。比如,一个文档管理系统可能会查找
    来更新文档状态。
  • 非侵入性扩展: 与添加新的XML元素不同,PIs不会改变XML文档的逻辑结构或数据模型。它们只是提供额外的、旁带的信息,这在需要保持XML Schema或DTD不变的情况下非常有用。

简而言之,它们都是为了让机器生成的输出更“智能”、更“友好”,不仅对程序,也对人。

处理指令与XML元素有何本质区别

这个问题问得好,它触及了XML设计哲学的一个核心点。在我看来,处理指令和XML元素,虽然都出现在XML文档中,但它们的“职责”和“身份”是截然不同的。

XML元素,是XML文档的核心内容和结构。它们定义了数据是什么,以及数据之间的层级关系。一个

元素包含
</pre>和<pre class="brush:php;toolbar:false;"><author></pre>,这清晰地表达了“书有标题和作者”这个事实。元素是XML的“名词”和“动词”,它们构建了文档的语义骨架。当一个XML解析器处理元素时,它会解析标签名、属性、内容,并构建一个DOM树或触发SAX事件,这些都是为了表示数据本身。元素必须遵循严格的嵌套规则,并可以被XML Schema或DTD进行验证。</p>
<p><strong>处理指令(PIs)</strong>,则完全是另一回事。它们不是文档数据的一部分,而是<strong>给处理应用程序的指令</strong>。PIs的格式是<pre class="brush:php;toolbar:false;"><?target data?></pre>。这里的<pre class="brush:php;toolbar:false;">target</pre>是一个“名字”,它告诉哪个应用程序应该处理这条指令;<pre class="brush:php;toolbar:false;">data</pre>部分则是具体的指令内容,这个内容对XML解析器来说通常是不透明的,它只是一个字符串,由<pre class="brush:php;toolbar:false;">target</pre>指定的应用程序去解释。</p>
<p>举个例子,<pre class="brush:php;toolbar:false;"><?xml-stylesheet type="text/xsl" href="style.xsl"?></pre>这个PI,它告诉浏览器或XML<a style="color:#f60; text-decoration:underline;" title="处理器" href="https://www.php.cn/zt/16030.html" target="_blank">处理器</a>:“嘿,有个叫<pre class="brush:php;toolbar:false;">xml-stylesheet</pre>的应用程序,它需要知道这个文档应该用<pre class="brush:php;toolbar:false;">style.xsl</pre>这个XSLT文件来渲染。”浏览器会去读取<pre class="brush:php;toolbar:false;">type</pre>和<pre class="brush:php;toolbar:false;">href</pre>,然后加载并应用样式表。但这个PI本身并不是XML文档数据的一部分,你不能说“文档的<pre class="brush:php;toolbar:false;">xml-stylesheet</pre>是<pre class="brush:php;toolbar:false;">style.xsl</pre>”。它只是一个“命令”。</p>
<p><strong>核心区别总结:</strong></p>
<ol>
<li>
<strong>角色与目的:</strong> 元素描述<strong>数据本身</strong>和<strong>其结构</strong>;PIs提供<strong>应用程序特定的指令</strong>。</li>
<li>
<strong>语义:</strong> 元素具有语义(例如,<pre class="brush:php;toolbar:false;"><price></pre>表示价格),可以被通用地理解和处理;PIs的语义完全依赖于其<pre class="brush:php;toolbar:false;">target</pre>应用程序,对其他应用程序来说可能毫无意义。</li>
<li>
<strong>解析与验证:</strong> 元素的内容会被XML解析器进一步解析、验证(如果存在Schema/DTD),并构建成信息集;PIs的<pre class="brush:php;toolbar:false;">data</pre>部分通常被解析器当作一个纯文本字符串传递给应用程序,不会进行XML级别的解析或验证。</li>
<li>
<strong>结构性:</strong> 元素是层级结构的一部分,它们有父子关系;PIs是独立的,它们只是文档流中的一个点,不参与XML的层级数据结构。</li>
<li>
<strong>语法:</strong> 元素使用<pre class="brush:php;toolbar:false;"><tag></pre>和<pre class="brush:php;toolbar:false;"></tag></pre>(或自闭合<pre class="brush:php;toolbar:false;"><tag/></pre>)以及属性;PIs使用<pre class="brush:php;toolbar:false;"><?target data?></pre>的特殊语法。</li>
</ol>
<p>所以,如果你的信息是关于文档内容的,用元素;如果你的信息是关于如何处理文档的,用PIs。这是一个非常清晰的界限。</p>
<h3>在动态生成注释或处理指令时,有哪些常见的陷阱或最佳实践?</h3>
<p>动态生成这类内容,尤其是在XSLT这种声明式语言里,确实有些微妙的地方。我个人在实践中踩过一些坑,也总结了一些经验。</p>
<p><strong>常见的陷阱:</strong></p>
<ol>
<li>
<strong>注释中的“--”序列:</strong> 这是最经典也最容易被忽视的陷阱。XML规范规定,注释内容中不能包含双连字符<pre class="brush:php;toolbar:false;">--</pre>。如果你动态生成注释时,内容里不小心出现了<pre class="brush:php;toolbar:false;">--</pre>,比如“<!-- 版本1--2发布 -->”,这会导致生成的XML文档不符合规范,解析器会报错。虽然一些XSLT处理器(特别是较新的版本)可能会智能地将其替换为<pre class="brush:php;toolbar:false;">- -</pre>或<pre class="brush:php;toolbar:false;">--</pre>来避免错误,但最好还是在生成前就避免这种情况,或者确保你的XSLT处理器能正确处理。</li>
<li>
<strong>处理指令的目标名(Target Name)不合法:</strong> 处理指令的<pre class="brush:php;toolbar:false;">name</pre>属性(也就是PI的target)必须是一个有效的XML名称。这意味着它不能包含空格、斜杠、冒号(除非是合法的QName前缀)、不能以数字或<pre class="brush:php;toolbar:false;">xml</pre>开头等。如果你的<pre class="brush:php;toolbar:false;">name</pre>是动态生成的,并且源数据中包含非法字符,就会导致输出的XML不规范。</li>
<li>
<strong>内容编码问题:</strong> 如果动态生成的内容包含特殊字符(如<pre class="brush:php;toolbar:false;">&</pre>,<pre class="brush:php;toolbar:false;"><</pre>,<pre class="brush:php;toolbar:false;">></pre>),XSLT会负责将其正确编码为实体引用(<pre class="brush:php;toolbar:false;">&</pre>,<pre class="brush:php;toolbar:false;">zuojiankuohaophpcn</pre>,<pre class="brush:php;toolbar:false;">youjiankuohaophpcn</pre>),这对于XML元素内容是没问题的。但对于处理指令的<pre class="brush:php;toolbar:false;">data</pre>部分,如果接收应用程序不期望这些实体,或者它有自己的解析规则,可能会导致问题。通常PI的<pre class="brush:php;toolbar:false;">data</pre>部分应避免这些字符,或者确保接收方能正确解码。</li>
<li>
<strong>过度使用或信息冗余:</strong> 就像代码注释一样,过多的、无用的注释只会让输出文件变得臃肿,难以阅读。处理指令也一样,如果一个PI没有实际的应用程序去消费它,那它就是多余的噪音。</li>
</ol>
<p><strong>最佳实践:</strong></p>
<ol>
<li>
<strong>明确目的,精简内容:</strong> 在决定添加注释或PI之前,先问自己:这个信息是给谁看的?它有什么用?如果答案不清晰,那就不要加。注释应该简洁明了,PI应该只包含接收应用程序所需的最少信息。</li>
<li>
<strong>利用XSLT的动态能力:</strong> 充分利用<pre class="brush:php;toolbar:false;"><xsl:value-of select="..." /></pre>、属性值模板(<pre class="brush:php;toolbar:false;">{...}</pre>)以及XSLT函数(如<pre class="brush:php;toolbar:false;">current-date()</pre>、<pre class="brush:php;toolbar:false;">format-date()</pre>)来构建动态内容。这样可以确保注释和PI始终反映最新的状态或数据。</li>
<li>
<strong>验证和测试输出:</strong> 这一点至关重要。特别是在涉及动态内容时,你永远不知道源数据会是什么样。生成完XML后,用一个XML验证器(如<pre class="brush:php;toolbar:false;">xmllint</pre>或任何IDE内置的验证工具)检查其规范性。如果输出是HTML,在浏览器中测试其渲染效果。对于PI,确保目标应用程序能够正确识别和处理它们。</li>
<li>
<strong>封装和重用:</strong> 如果你需要在多个地方生成相似的注释或处理指令(比如每个文件的顶部都需要一个版权声明),可以考虑将其封装在一个具名模板(<pre class="brush:php;toolbar:false;"><xsl:template name="generate-header-comment"></pre>)中。这样不仅提高了代码复用性,也方便统一管理和修改。</li>
<li>
<strong>考虑输出类型:</strong> 如果你输出的是HTML,并且注释是给浏览器看的,那么HTML注释(<pre class="brush:php;toolbar:false;"><!-- ... --></pre>)是合适的。如果输出是XML,则XML注释规则适用。处理指令则通常是给XML处理器或特定应用程序的。</li>
<li>
<strong>安全考量:</strong> 永远不要在注释或处理指令中放置敏感信息,尤其是当你的输出可能会被公开访问时。它们不是加密或安全存储<a style="color:#f60; text-decoration:underline;" title="敏感数据" href="https://www.php.cn/zt/36496.html" target="_blank">敏感数据</a>的地方。</li>
</ol>
<p>总而言之,动态生成注释和处理指令是XSLT非常实用的功能,但用得好不好,往往取决于你对XML规范的理解、对目标应用程序行为的预期,以及在实践中积累的细致。</p>					</div>
					<div class="artmoreart ">
													<div class="artdp artptit"><span></span>
								<p>相关文章</p>
							</div>
							<div class="artmores flexColumn">
																	<a class="artmrlis flexRow" href="/faq/2047155.html" title="XML的空白字符(Whitespace)处理规则是什么,解析器如何对待换行和缩进?"><b></b>
										<p class="overflowclass">XML的空白字符(Whitespace)处理规则是什么,解析器如何对待换行和缩进?</p>
									</a>
																	<a class="artmrlis flexRow" href="/faq/2047022.html" title="Python Pandas如何将DataFrame导出为指定XML"><b></b>
										<p class="overflowclass">Python Pandas如何将DataFrame导出为指定XML</p>
									</a>
																	<a class="artmrlis flexRow" href="/faq/2046919.html" title="如何在Flutter Web中处理XML文件的拖拽上传"><b></b>
										<p class="overflowclass">如何在Flutter Web中处理XML文件的拖拽上传</p>
									</a>
																	<a class="artmrlis flexRow" href="/faq/2046915.html" title="如何解决XML文件乱码问题 XML文件编码格式处理方法"><b></b>
										<p class="overflowclass">如何解决XML文件乱码问题 XML文件编码格式处理方法</p>
									</a>
																	<a class="artmrlis flexRow" href="/faq/2046772.html" title="AutoML如何根据上传的XML数据进行模型训练"><b></b>
										<p class="overflowclass">AutoML如何根据上传的XML数据进行模型训练</p>
									</a>
															</div>
													<div class="artmoretabs flexRow">
								<p>相关标签:</p>
								<div class="mtbs flexRow">
									<a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/16030.html" target="_blank">处理器</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/16180.html" target="_blank">浏览器</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/16887.html" target="_blank">工具</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/27988.html" target="_blank">区别</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/33940.html" target="_blank">xml处理</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/36496.html" target="_blank">敏感数据</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/92702.html" target="_blank">为什么</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=封装" target="_blank">封装</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=select" target="_blank">select</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=date" target="_blank">date</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=format" target="_blank">format</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=xml" target="_blank">xml</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=字符串" target="_blank">字符串</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=数据结构" target="_blank">数据结构</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=Attribute" target="_blank">Attribute</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=事件" target="_blank">事件</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=dom" target="_blank">dom</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=href" target="_blank">href</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=样式表" target="_blank">样式表</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=ide" target="_blank">ide</a>								</div>
							</div>
						
						<p class="statement">本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn</p>
						<div class="lastanext flexRow">
													<a class="lastart flexRow" href="/faq/1469093.html" title="如何使用XSLT对XML进行排序操作?"><span>上一篇:</span>如何使用XSLT对XML进行排序操作?</a>
													<a class="nextart flexRow" href="/faq/1469166.html" title="XSLT模板优先级如何确定?"><span>下一篇:</span>XSLT模板优先级如何确定?</a>
												</div>
					</div>

					<div class="artlef-down ">
													<div class="authormore ">
								<div class="rightdTitle flexRow">
									<div class="title-left flexRow"> <b></b>
										<p>作者最新文章</p>
									</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2048944.html" title="手机怎么用12123处理交通违章 12123违章处理图文教程"><b></b>
												<p class="overflowclass">手机怎么用12123处理交通违章 12123违章处理图文教程</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-30 19:40</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2048962.html" title="7881低价捡漏专区 7881特价账号入口"><b></b>
												<p class="overflowclass">7881低价捡漏专区 7881特价账号入口</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-30 19:44</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2048970.html" title="如何辨别声音是真人还是AI合成的?"><b></b>
												<p class="overflowclass">如何辨别声音是真人还是AI合成的?</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-30 19:46</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2048973.html" title="学生个人综合素质评价展示入口 电子档案查看入口"><b></b>
												<p class="overflowclass">学生个人综合素质评价展示入口 电子档案查看入口</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-30 19:47</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2048980.html" title="如何用AI进行服装搭配,解决每日穿搭烦恼?"><b></b>
												<p class="overflowclass">如何用AI进行服装搭配,解决每日穿搭烦恼?</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-30 19:49</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2049024.html" title="PDF怎么减小文件大小 PDF极致压缩不失真方法【解决】"><b></b>
												<p class="overflowclass">PDF怎么减小文件大小 PDF极致压缩不失真方法【解决】</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-30 20:01</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2049034.html" title="Safari怎么把密码共享给家人朋友 iPhone AirDrop共享密码教程【安全】"><b></b>
												<p class="overflowclass">Safari怎么把密码共享给家人朋友 iPhone AirDrop共享密码教程【安全】</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-30 20:04</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2049041.html" title="如何用AI进行视频内容的智能标签和分类?"><b></b>
												<p class="overflowclass">如何用AI进行视频内容的智能标签和分类?</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-30 20:06</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2049048.html" title="Win10怎么开启文件扩展名显示 Windows10查看文件真后缀方法"><b></b>
												<p class="overflowclass">Win10怎么开启文件扩展名显示 Windows10查看文件真后缀方法</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-30 20:08</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2049069.html" title="如何用AI工具将博客文章快速转为视频内容?"><b></b>
												<p class="overflowclass">如何用AI工具将博客文章快速转为视频内容?</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-30 20:13</p>
											</div>
										</div>
								</div>
															</div>
						
						<div class="moreAi ">
							<div class="rightdTitle flexRow">
								<div class="title-left flexRow"> <b></b>
									<p>热门AI工具</p>
								</div>
								<a target="_blank" class="rititle-more flexRow" href="/ai" title="热门AI工具"><span>更多</span><b></b></a>
							</div>

							<div class="moreailist flexRow">
																	<div class="aidcons flexRow   ">
										<div   class="aibtns flexRow">
											<a target="_blank" href="/ai/723" title="DeepSeek" class="aibtnsa flexRow" >
												<img src="https://img.php.cn/upload/ai_manual/000/000/000/175679963982777.png?x-oss-process=image/resize,m_mfit,h_70,w_70,limit_0" alt="DeepSeek" class="aibtnimg" onerror="this.src='/static/lhimages/moren/morentu.png'">
											</a>
											<div class="aibtn-right flexColumn">
												<a target="_blank" href="/ai/723" title="DeepSeek" class="overflowclass abripone">DeepSeek</a>
												<p class="overflowclass abriptwo">幻方量化公司旗下的开源大模型平台</p>
																									<div class="aidconstab flexRow">
														<a class="aidcontbp flexRow flexcenter"  href="/ai/tag/code" target="_blank" >AI 编程开发</a><a class="aidcontbp flexRow flexcenter"  href="/ai/tag/chat" target="_blank" >AI 聊天问答</a>													</div>
																							</div>
										</div>
									</div>
																	<div class="aidcons flexRow   ">
										<div   class="aibtns flexRow">
											<a target="_blank" href="/ai/726" title="豆包大模型" class="aibtnsa flexRow" >
												<img src="https://img.php.cn/upload/ai_manual/000/000/000/175680204067325.png?x-oss-process=image/resize,m_mfit,h_70,w_70,limit_0" alt="豆包大模型" class="aibtnimg" onerror="this.src='/static/lhimages/moren/morentu.png'">
											</a>
											<div class="aibtn-right flexColumn">
												<a target="_blank" href="/ai/726" title="豆包大模型" class="overflowclass abripone">豆包大模型</a>
												<p class="overflowclass abriptwo">字节跳动自主研发的一系列大型语言模型</p>
																									<div class="aidconstab flexRow">
														<a class="aidcontbp flexRow flexcenter"  href="/ai/tag/code" target="_blank" >AI 编程开发</a><a class="aidcontbp flexRow flexcenter"  href="/ai/tag/code/large-model" target="_blank" >AI大模型</a>													</div>
																							</div>
										</div>
									</div>
																	<div class="aidcons flexRow   ">
										<div   class="aibtns flexRow">
											<a target="_blank" href="/ai/725" title="通义千问" class="aibtnsa flexRow" >
												<img src="https://img.php.cn/upload/ai_manual/000/000/000/175679974228210.png?x-oss-process=image/resize,m_mfit,h_70,w_70,limit_0" alt="通义千问" class="aibtnimg" onerror="this.src='/static/lhimages/moren/morentu.png'">
											</a>
											<div class="aibtn-right flexColumn">
												<a target="_blank" href="/ai/725" title="通义千问" class="overflowclass abripone">通义千问</a>
												<p class="overflowclass abriptwo">阿里巴巴推出的全能AI助手</p>
																									<div class="aidconstab flexRow">
														<a class="aidcontbp flexRow flexcenter"  href="/ai/tag/code" target="_blank" >AI 编程开发</a><a class="aidcontbp flexRow flexcenter"  href="/ai/tag/ai-agent" target="_blank" >Agent智能体</a>													</div>
																							</div>
										</div>
									</div>
																	<div class="aidcons flexRow   ">
										<div   class="aibtns flexRow">
											<a target="_blank" href="/ai/854" title="腾讯元宝" class="aibtnsa flexRow" >
												<img src="https://img.php.cn/upload/ai_manual/000/000/000/175679978251103.png?x-oss-process=image/resize,m_mfit,h_70,w_70,limit_0" alt="腾讯元宝" class="aibtnimg" onerror="this.src='/static/lhimages/moren/morentu.png'">
											</a>
											<div class="aibtn-right flexColumn">
												<a target="_blank" href="/ai/854" title="腾讯元宝" class="overflowclass abripone">腾讯元宝</a>
												<p class="overflowclass abriptwo">腾讯混元平台推出的AI助手</p>
																									<div class="aidconstab flexRow">
														<a class="aidcontbp flexRow flexcenter"  href="/ai/tag/office/docs" target="_blank" >文档处理</a><a class="aidcontbp flexRow flexcenter"  href="/ai/tag/chat" target="_blank" >AI 聊天问答</a>													</div>
																							</div>
										</div>
									</div>
																	<div class="aidcons flexRow   ">
										<div   class="aibtns flexRow">
											<a target="_blank" href="/ai/724" title="文心一言" class="aibtnsa flexRow" >
												<img src="https://img.php.cn/upload/ai_manual/000/000/000/175679974557049.png?x-oss-process=image/resize,m_mfit,h_70,w_70,limit_0" alt="文心一言" class="aibtnimg" onerror="this.src='/static/lhimages/moren/morentu.png'">
											</a>
											<div class="aibtn-right flexColumn">
												<a target="_blank" href="/ai/724" title="文心一言" class="overflowclass abripone">文心一言</a>
												<p class="overflowclass abriptwo">文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。</p>
																									<div class="aidconstab flexRow">
														<a class="aidcontbp flexRow flexcenter"  href="/ai/tag/code" target="_blank" >AI 编程开发</a><a class="aidcontbp flexRow flexcenter"  href="/ai/tag/text" target="_blank" >AI 文本写作</a>													</div>
																							</div>
										</div>
									</div>
																	<div class="aidcons flexRow   ">
										<div   class="aibtns flexRow">
											<a target="_blank" href="/ai/1507" title="讯飞写作" class="aibtnsa flexRow" >
												<img src="https://img.php.cn/upload/ai_manual/000/969/633/68b7a4153cd86671.png?x-oss-process=image/resize,m_mfit,h_70,w_70,limit_0" alt="讯飞写作" class="aibtnimg" onerror="this.src='/static/lhimages/moren/morentu.png'">
											</a>
											<div class="aibtn-right flexColumn">
												<a target="_blank" href="/ai/1507" title="讯飞写作" class="overflowclass abripone">讯飞写作</a>
												<p class="overflowclass abriptwo">基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿</p>
																									<div class="aidconstab flexRow">
														<a class="aidcontbp flexRow flexcenter"  href="/ai/tag/text" target="_blank" >AI 文本写作</a><a class="aidcontbp flexRow flexcenter"  href="/ai/tag/text/chinese-writing" target="_blank" >中文写作</a>													</div>
																							</div>
										</div>
									</div>
																	<div class="aidcons flexRow   ">
										<div   class="aibtns flexRow">
											<a target="_blank" href="/ai/1115" title="即梦AI" class="aibtnsa flexRow" >
												<img src="https://img.php.cn/upload/ai_manual/001/246/273/68b6d8f7c530c315.png?x-oss-process=image/resize,m_mfit,h_70,w_70,limit_0" alt="即梦AI" class="aibtnimg" onerror="this.src='/static/lhimages/moren/morentu.png'">
											</a>
											<div class="aibtn-right flexColumn">
												<a target="_blank" href="/ai/1115" title="即梦AI" class="overflowclass abripone">即梦AI</a>
												<p class="overflowclass abriptwo">一站式AI创作平台,免费AI图片和视频生成。</p>
																									<div class="aidconstab flexRow">
														<a class="aidcontbp flexRow flexcenter"  href="" target="_blank" ></a><a class="aidcontbp flexRow flexcenter"  href="/ai/tag/image/image-titching" target="_blank" >图片拼接</a>													</div>
																							</div>
										</div>
									</div>
																	<div class="aidcons flexRow   ">
										<div   class="aibtns flexRow">
											<a target="_blank" href="/ai/808" title="ChatGPT" class="aibtnsa flexRow" >
												<img src="https://img.php.cn/upload/ai_manual/000/000/000/175679970194596.png?x-oss-process=image/resize,m_mfit,h_70,w_70,limit_0" alt="ChatGPT" class="aibtnimg" onerror="this.src='/static/lhimages/moren/morentu.png'">
											</a>
											<div class="aibtn-right flexColumn">
												<a target="_blank" href="/ai/808" title="ChatGPT" class="overflowclass abripone">ChatGPT</a>
												<p class="overflowclass abriptwo">最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。</p>
																									<div class="aidconstab flexRow">
														<a class="aidcontbp flexRow flexcenter"  href="/ai/tag/code" target="_blank" >AI 编程开发</a><a class="aidcontbp flexRow flexcenter"  href="/ai/tag/text" target="_blank" >AI 文本写作</a>													</div>
																							</div>
										</div>
									</div>
																	<div class="aidcons flexRow   ">
										<div   class="aibtns flexRow">
											<a target="_blank" href="/ai/821" title="智谱清言 - 免费全能的AI助手" class="aibtnsa flexRow" >
												<img src="https://img.php.cn/upload/ai_manual/000/000/000/175679976181507.png?x-oss-process=image/resize,m_mfit,h_70,w_70,limit_0" alt="智谱清言 - 免费全能的AI助手" class="aibtnimg" onerror="this.src='/static/lhimages/moren/morentu.png'">
											</a>
											<div class="aibtn-right flexColumn">
												<a target="_blank" href="/ai/821" title="智谱清言 - 免费全能的AI助手" class="overflowclass abripone">智谱清言 - 免费全能的AI助手</a>
												<p class="overflowclass abriptwo">智谱清言 - 免费全能的AI助手</p>
																									<div class="aidconstab flexRow">
														<a class="aidcontbp flexRow flexcenter"  href="/ai/tag/code" target="_blank" >AI 编程开发</a><a class="aidcontbp flexRow flexcenter"  href="/ai/tag/ai-agent" target="_blank" >Agent智能体</a>													</div>
																							</div>
										</div>
									</div>
															</div>
						</div>

					</div>


				</div>


			</div>
			<div class="conRight artdtilRight ">
				<div class="artrig-adv ">
                    <script type="text/javascript" src="https://teacher.php.cn/php/MDM3MTk1MGYxYjI5ODJmNTE0ZWVkZTA3NmJhYzhmMjI6Og=="></script>
                </div>
				<div class="hotzt artdtzt">
					<div class="rightdTitle flexRow">
						<div class="title-left flexRow"> <b></b>
							<p>相关专题</p>
						</div>
						<a target="_blank" class="rititle-more flexRow" href="/faq/zt" title="相关专题"><span>更多</span><b></b></a>
					</div>
					<div class="hotztuls flexColumn">
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/formatzpython" class="aClass flexRow hotzta" title="format在python中的用法"><img
										src="https://img.php.cn/upload/subject/202307/31/2023073114074433322.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="format在python中的用法" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/formatzpython" class="aClass flexRow hotztra overflowclass" title="format在python中的用法">format在python中的用法</a>
									<p class="aClass flexRow hotztrp overflowclass">Python中的format是一种字符串格式化方法,用于将变量或值插入到字符串中的占位符位置。通过format方法,我们可以动态地构建字符串,使其包含不同值。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">824</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2023.07.31</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/pythonzdforma" class="aClass flexRow hotzta" title="python中的format是什么意思"><img
										src="https://img.php.cn/upload/subject/202406/27/2024062716241624492.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="python中的format是什么意思" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/pythonzdforma" class="aClass flexRow hotztra overflowclass" title="python中的format是什么意思">python中的format是什么意思</a>
									<p class="aClass flexRow hotztrp overflowclass">python中的format是一种字符串格式化方法,用于将变量或值插入到字符串中的占位符位置。通过format方法,我们可以动态地构建字符串,使其包含不同值。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">436</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2024.06.27</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/pdfzmzhcxmlgs" class="aClass flexRow hotzta" title="pdf怎么转换成xml格式"><img
										src="https://img.php.cn/upload/subject/202404/01/2024040114325666773.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="pdf怎么转换成xml格式" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/pdfzmzhcxmlgs" class="aClass flexRow hotztra overflowclass" title="pdf怎么转换成xml格式">pdf怎么转换成xml格式</a>
									<p class="aClass flexRow hotztrp overflowclass">将 pdf 转换为 xml 的方法:1. 使用在线转换器;2. 使用桌面软件(如 adobe acrobat、itext);3. 使用命令行工具(如 pdftoxml)。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">1903</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2024.04.01</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/xmlzmbcword" class="aClass flexRow hotzta" title="xml怎么变成word"><img
										src="https://img.php.cn/upload/subject/202408/01/2024080117482029290.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="xml怎么变成word" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/xmlzmbcword" class="aClass flexRow hotztra overflowclass" title="xml怎么变成word">xml怎么变成word</a>
									<p class="aClass flexRow hotztrp overflowclass">步骤:1. 导入 xml 文件;2. 选择 xml 结构;3. 映射 xml 元素到 word 元素;4. 生成 word 文档。提示:确保 xml 文件结构良好,并预览 word 文档以验证转换是否成功。想了解更多xml的相关内容,可以阅读本专题下面的文章。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">2092</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2024.08.01</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/xmlssmgsdwj" class="aClass flexRow hotzta" title="xml是什么格式的文件"><img
										src="https://img.php.cn/upload/subject/202411/28/2024112814063976885.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="xml是什么格式的文件" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/xmlssmgsdwj" class="aClass flexRow hotztra overflowclass" title="xml是什么格式的文件">xml是什么格式的文件</a>
									<p class="aClass flexRow hotztrp overflowclass">xml是一种纯文本格式的文件。xml指的是可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。想了解更多相关的内容,可阅读本专题下面的相关文章。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">1081</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2024.11.28</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/jszfcsz" class="aClass flexRow hotzta" title="js 字符串转数组"><img
										src="https://img.php.cn/upload/subject/202308/03/2023080313364924691.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="js 字符串转数组" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/jszfcsz" class="aClass flexRow hotztra overflowclass" title="js 字符串转数组">js 字符串转数组</a>
									<p class="aClass flexRow hotztrp overflowclass">js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">320</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2023.08.03</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/jsjqzfc" class="aClass flexRow hotzta" title="js截取字符串的方法"><img
										src="https://img.php.cn/upload/subject/202309/04/2023090409533171913.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="js截取字符串的方法" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/jsjqzfc" class="aClass flexRow hotztra overflowclass" title="js截取字符串的方法">js截取字符串的方法</a>
									<p class="aClass flexRow hotztrp overflowclass">js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">212</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2023.09.04</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/javajczshz" class="aClass flexRow hotzta" title="java基础知识汇总"><img
										src="https://img.php.cn/upload/subject/202310/24/2023102410332946975.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="java基础知识汇总" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/javajczshz" class="aClass flexRow hotztra overflowclass" title="java基础知识汇总">java基础知识汇总</a>
									<p class="aClass flexRow hotztrp overflowclass">java基础知识有Java的历史和特点、Java的开发环境、Java的基本数据类型、变量和常量、运算符和表达式、控制语句、数组和字符串等等知识点。想要知道更多关于java基础知识的朋友,请阅读本专题下面的的有关文章,欢迎大家来php中文网学习。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">1502</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2023.10.24</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/csjmsyrjjg" class="aClass flexRow hotzta" title="C++ 设计模式与软件架构"><img
										src="https://img.php.cn/upload/subject/202601/30/2026013010035824284.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="C++ 设计模式与软件架构" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/csjmsyrjjg" class="aClass flexRow hotztra overflowclass" title="C++ 设计模式与软件架构">C++ 设计模式与软件架构</a>
									<p class="aClass flexRow hotztrp overflowclass">本专题深入讲解 C++ 中的常见设计模式与架构优化,包括单例模式、工厂模式、观察者模式、策略模式、命令模式等,结合实际案例展示如何在 C++ 项目中应用这些模式提升代码可维护性与扩展性。通过案例分析,帮助开发者掌握 如何运用设计模式构建高质量的软件架构,提升系统的灵活性与可扩展性。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">14</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2026.01.30</p>
										</div>
									</div>
								</div>
							</div>
											</div>
				</div>

				<div class="hotdownload ">
					<div class="rightdTitle flexRow">
						<div class="title-left flexRow"> <b></b>
							<p>热门下载</p>
						</div>
						<a target="_blank" class="rititle-more flexRow" href="/xiazai" title="热门下载"><span>更多</span><b></b></a>
					</div>
					<div class="hotdownTab">
						<div class="hdTabs flexRow">
							<div class="check" data-id="onef">网站特效 <b></b> </div> /
							<div class="" data-id="twof">网站源码 <b></b></div> /
							<div class="" data-id="threef">网站素材 <b></b></div> /
							<div class="" data-id="fourf">前端模板 <b></b></div>
						</div>
						<ul class="onef">
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="jQuery鼠标滚轮控制幻灯片切换" href="/xiazai/js/8740"><span>[图片特效]</span><span>jQuery鼠标滚轮控制幻灯片切换</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="jQuery微信手机端答题表单特效" href="/xiazai/js/8739"><span>[表单按钮]</span><span>jQuery微信手机端答题表单特效</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="js正则表达式表单验证代码" href="/xiazai/js/8738"><span>[表单按钮]</span><span>js正则表达式表单验证代码</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="CSS3图片形状遮罩动画效果" href="/xiazai/js/8737"><span>[图片特效]</span><span>CSS3图片形状遮罩动画效果</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="div css手机网站login表单特效" href="/xiazai/js/8736"><span>[表单按钮]</span><span>div css手机网站login表单特效</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="qq空间遮罩层jQuery相册切换" href="/xiazai/js/8735"><span>[图片特效]</span><span>qq空间遮罩层jQuery相册切换</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="jquery衣服尺寸勾选表单" href="/xiazai/js/8734"><span>[表单按钮]</span><span>jquery衣服尺寸勾选表单</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="22款不同效果产品图片展示切换" href="/xiazai/js/8733"><span>[图片特效]</span><span>22款不同效果产品图片展示切换</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="jquery带登录注册幻灯片代码" href="/xiazai/js/8732"><span>[表单按钮]</span><span>jquery带登录注册幻灯片代码</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="jQuery图片放大变小切换代码" href="/xiazai/js/8731"><span>[图片特效]</span><span>jQuery图片放大变小切换代码</span></a>
									</div>
								</li>
													</ul>
						<ul class="twof" style="display:none;">
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/11355" title="openaishop"><span>[电商源码]</span><span>openaishop</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/11354" title="思翔企(事)业单位文件柜 build 20080313"><span>[其它模板]</span><span>思翔企(事)业单位文件柜 build 20080313</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/11353" title="雅龙智能装备工业设备类WordPress主题1.0"><span>[企业站源码]</span><span>雅龙智能装备工业设备类WordPress主题1.0</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/11352" title="威发卡自动发卡系统"><span>[电商源码]</span><span>威发卡自动发卡系统</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/11351" title="卡密分发系统"><span>[电商源码]</span><span>卡密分发系统</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/11350" title="中华陶瓷网"><span>[电商源码]</span><span>中华陶瓷网</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/11349" title="简洁粉色食品公司网站"><span>[电商源码]</span><span>简洁粉色食品公司网站</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/11348" title="极速网店系统"><span>[电商源码]</span><span>极速网店系统</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/11347" title="淘宝妈妈_淘客推广系统"><span>[电商源码]</span><span>淘宝妈妈_淘客推广系统</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/11346" title="积客B2SCMS商城系统"><span>[电商源码]</span><span>积客B2SCMS商城系统</span> </a>
									</div>
								</li>
													</ul>
						<ul class="threef" style="display:none;">
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4307" title="手绘烘焙面包食材合集矢量素材"><span>[网站素材]</span><span>手绘烘焙面包食材合集矢量素材</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4306" title="复古红日山峰风景矢量素材"><span>[网站素材]</span><span>复古红日山峰风景矢量素材</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4305" title="极简复古意大利面海报矢量模板"><span>[网站素材]</span><span>极简复古意大利面海报矢量模板</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4304" title="国风红色灯笼装饰合集矢量素材"><span>[网站素材]</span><span>国风红色灯笼装饰合集矢量素材</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4303" title="快餐美食宣传海报模板INS下载"><span>[网站素材]</span><span>快餐美食宣传海报模板INS下载</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4302" title="卡通灯塔房屋建筑合集矢量素材"><span>[网站素材]</span><span>卡通灯塔房屋建筑合集矢量素材</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4301" title="黑色耳机宣传海报PSD模板设计下载"><span>[网站素材]</span><span>黑色耳机宣传海报PSD模板设计下载</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4300" title="冬季蓝色雪花松枝合集矢量素材"><span>[网站素材]</span><span>冬季蓝色雪花松枝合集矢量素材</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4299" title="情人节爱心主题海报PSD源文件设计下载"><span>[网站素材]</span><span>情人节爱心主题海报PSD源文件设计下载</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4298" title="2026粉色梦幻马年矢量模板"><span>[网站素材]</span><span>2026粉色梦幻马年矢量模板</span> </a>
									</div>
								</li>
													</ul>
						<ul class="fourf" style="display:none;">
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/8590"  title="驾照考试驾校HTML5网站模板"><span>[前端模板]</span><span>驾照考试驾校HTML5网站模板</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/8589"  title="驾照培训服务机构宣传网站模板"><span>[前端模板]</span><span>驾照培训服务机构宣传网站模板</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/8588"  title="HTML5房地产公司宣传网站模板"><span>[前端模板]</span><span>HTML5房地产公司宣传网站模板</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/8587"  title="新鲜有机肉类宣传网站模板"><span>[前端模板]</span><span>新鲜有机肉类宣传网站模板</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/8586"  title="响应式天气预报宣传网站模板"><span>[前端模板]</span><span>响应式天气预报宣传网站模板</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/8585"  title="房屋建筑维修公司网站CSS模板"><span>[前端模板]</span><span>房屋建筑维修公司网站CSS模板</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/8584"  title="响应式志愿者服务网站模板"><span>[前端模板]</span><span>响应式志愿者服务网站模板</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/8583"  title="创意T恤打印店网站HTML5模板"><span>[前端模板]</span><span>创意T恤打印店网站HTML5模板</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/8582"  title="网页开发岗位简历作品展示网页模板"><span>[前端模板]</span><span>网页开发岗位简历作品展示网页模板</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/code/8581"  title="响应式人力资源机构宣传网站模板"><span>[前端模板]</span><span>响应式人力资源机构宣传网站模板</span> </a>
									</div>
								</li>
													</ul>
					</div>
					<script>
						$('.hdTabs>div').click(function (e) {
							$('.hdTabs>div').removeClass('check')
							$(this).addClass('check')
							$('.hotdownTab>ul').css('display', 'none')
							$('.' + e.currentTarget.dataset.id).show()
						})
					</script>

				</div>

				<div class="artrig-adv ">
					<script type="text/javascript" src="https://teacher.php.cn/php/MDM3MTk1MGYxYjI5ODJmNTE0ZWVkZTA3NmJhYzhmMjI6Og=="></script>
                </div>



				<div class="xgarts ">
					<div class="rightdTitle flexRow">
						<div class="title-left flexRow"> <b></b>
							<p>相关下载</p>
						</div>
						<a target="_blank" class="rititle-more flexRow" href="/xiazai" title="相关下载"><span>更多</span><b></b></a>
					</div>
					<div class="xgwzlist ">
											<div class="xgwzlid flexRow"><b></b><a target="_blank" title="php商城系统" href="/xiazai/code/11178">php商城系统</a></div>
											<div class="xgwzlid flexRow"><b></b><a target="_blank" title="淘源码商城PHP淘宝查信誉" href="/xiazai/code/11177">淘源码商城PHP淘宝查信誉</a></div>
											<div class="xgwzlid flexRow"><b></b><a target="_blank" title="PHP房产程序[BBWPS]" href="/xiazai/code/11165">PHP房产程序[BBWPS]</a></div>
											<div class="xgwzlid flexRow"><b></b><a target="_blank" title="PHP简约自动发卡平台个人版" href="/xiazai/code/11128">PHP简约自动发卡平台个人版</a></div>
											<div class="xgwzlid flexRow"><b></b><a target="_blank" title="ERMEB域名PHP离线网络授权系统" href="/xiazai/code/11040">ERMEB域名PHP离线网络授权系统</a></div>
											<div class="xgwzlid flexRow"><b></b><a target="_blank" title="Difeye-敏捷的轻量级PHP框架" href="/xiazai/code/11037">Difeye-敏捷的轻量级PHP框架</a></div>
											<div class="xgwzlid flexRow"><b></b><a target="_blank" title="大泉州汽车网PHP整站程序" href="/xiazai/code/10963">大泉州汽车网PHP整站程序</a></div>
										</div>

				</div>

				<div class="jpkc">
					<div class="rightdTitle flexRow">
						<div class="title-left flexRow"> <b></b>
							<p>精品课程</p>
						</div>
						<a class="rititle-more flexRow" target="_blank" href="/course/sort_new.html" title="精品课程"><span>更多</span><b></b></a>
					</div>
					<div class=" jpkcTab">
						<div class=" jpkcTabs flexRow">
							<div class="check" data-id="onefd">相关推荐 <b></b> </div> /
							<div class="" data-id="twofd">热门推荐 <b></b></div> /
							<div class="" data-id="threefd">最新课程 <b></b></div>
						</div>
						<div class="onefd jpktabd">
													<div  class="ristyA flexRow " >
								<a target="_blank" href="/course/1688.html" title="Django 教程">
									<img src="https://img.php.cn/upload/course/000/000/090/68a6fd2c0a705569.jpeg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="Django 教程" class="ristyAimg"
										onerror="this.src='/static/mobimages/moren/morentu.png'">
								</a>
								<div class="ristyaRight flexColumn">
									<a target="_blank" href="/course/1688.html" title="Django 教程"
										class="rirightp overflowclass">Django 教程</a>

									<div class="risrdown flexRow">
										<p>共28课时 | 3.7万人学习</p>
									</div>
								</div>
							</div>
													<div  class="ristyA flexRow " >
								<a target="_blank" href="/course/1684.html" title="SciPy 教程">
									<img src="https://img.php.cn/upload/course/000/000/090/689da63e955bb889.png?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="SciPy 教程" class="ristyAimg"
										onerror="this.src='/static/mobimages/moren/morentu.png'">
								</a>
								<div class="ristyaRight flexColumn">
									<a target="_blank" href="/course/1684.html" title="SciPy 教程"
										class="rirightp overflowclass">SciPy 教程</a>

									<div class="risrdown flexRow">
										<p>共10课时 | 1.3万人学习</p>
									</div>
								</div>
							</div>
													<div  class="ristyA flexRow " >
								<a target="_blank" href="/course/1683.html" title="Sass 教程">
									<img src="https://img.php.cn/upload/course/000/000/090/689da3d823e1e854.png?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="Sass 教程" class="ristyAimg"
										onerror="this.src='/static/mobimages/moren/morentu.png'">
								</a>
								<div class="ristyaRight flexColumn">
									<a target="_blank" href="/course/1683.html" title="Sass 教程"
										class="rirightp overflowclass">Sass 教程</a>

									<div class="risrdown flexRow">
										<p>共14课时 | 0.8万人学习</p>
									</div>
								</div>
							</div>
												</div>

						<div class="twofd jpktabd" style="display:none;">
															<div  class="ristyA flexRow " >
									<a target="_blank" href="/course/1656.html" title="JavaScript ES5基础线上课程教学">
										<img src="https://img.php.cn/upload/course/000/000/081/6862652adafef801.png?x-oss-process=image/resize,m_mfit,h_86,w_140,limit_0" alt="JavaScript ES5基础线上课程教学" class="ristyAimg"
											onerror="this.src='/static/mobimages/moren/morentu.png'">
									</a>
									<div class="ristyaRight flexColumn">
										<a target="_blank" href="/course/1656.html" title="JavaScript ES5基础线上课程教学"
											class="rirightp overflowclass">JavaScript ES5基础线上课程教学</a>

										<div class="risrdown flexRow">
											<p>共6课时 | 11.2万人学习</p>
										</div>
									</div>
								</div>
															<div  class="ristyA flexRow " >
									<a target="_blank" href="/course/812.html" title="最新ThinkPHP 5.1全球首发视频教程(60天成就PHP大牛线上培训班课)">
										<img src="https://img.php.cn/upload/course/000/000/041/620debc3eab3f377.jpg?x-oss-process=image/resize,m_mfit,h_86,w_140,limit_0" alt="最新ThinkPHP 5.1全球首发视频教程(60天成就PHP大牛线上培训班课)" class="ristyAimg"
											onerror="this.src='/static/mobimages/moren/morentu.png'">
									</a>
									<div class="ristyaRight flexColumn">
										<a target="_blank" href="/course/812.html" title="最新ThinkPHP 5.1全球首发视频教程(60天成就PHP大牛线上培训班课)"
											class="rirightp overflowclass">最新ThinkPHP 5.1全球首发视频教程(60天成就PHP大牛线上培训班课)</a>

										<div class="risrdown flexRow">
											<p>共79课时 | 151.8万人学习</p>
										</div>
									</div>
								</div>
															<div  class="ristyA flexRow " >
									<a target="_blank" href="/course/639.html" title="phpStudy极速入门视频教程">
										<img src="https://img.php.cn/upload/course/000/000/068/62611ef88fcec821.jpg?x-oss-process=image/resize,m_mfit,h_86,w_140,limit_0" alt="phpStudy极速入门视频教程" class="ristyAimg"
											onerror="this.src='/static/mobimages/moren/morentu.png'">
									</a>
									<div class="ristyaRight flexColumn">
										<a target="_blank" href="/course/639.html" title="phpStudy极速入门视频教程"
											class="rirightp overflowclass">phpStudy极速入门视频教程</a>

										<div class="risrdown flexRow">
											<p>共6课时 | 53.4万人学习</p>
										</div>
									</div>
								</div>
													</div>

						<div class="threefd jpktabd" style="display:none;">
															<div  class="ristyA flexRow " >
										<a target="_blank" href="/course/1696.html" title="最新Python教程 从入门到精通">
											<img src="https://img.php.cn/upload/course/000/000/081/68c135bb72783194.png?x-oss-process=image/resize,m_mfit,h_86,w_140,limit_0" alt="最新Python教程 从入门到精通" class="ristyAimg"
												onerror="this.src='/static/mobimages/moren/morentu.png'">
										</a>
										<div class="ristyaRight flexColumn">
											<a target="_blank" href="/course/1696.html" title="最新Python教程 从入门到精通"
												class="rirightp overflowclass">最新Python教程 从入门到精通</a>

											<div class="risrdown flexRow">
												<p>共4课时 | 22.4万人学习</p>
											</div>
										</div>
									</div>
																<div  class="ristyA flexRow " >
										<a target="_blank" href="/course/1656.html" title="JavaScript ES5基础线上课程教学">
											<img src="https://img.php.cn/upload/course/000/000/081/6862652adafef801.png?x-oss-process=image/resize,m_mfit,h_86,w_140,limit_0" alt="JavaScript ES5基础线上课程教学" class="ristyAimg"
												onerror="this.src='/static/mobimages/moren/morentu.png'">
										</a>
										<div class="ristyaRight flexColumn">
											<a target="_blank" href="/course/1656.html" title="JavaScript ES5基础线上课程教学"
												class="rirightp overflowclass">JavaScript ES5基础线上课程教学</a>

											<div class="risrdown flexRow">
												<p>共6课时 | 11.2万人学习</p>
											</div>
										</div>
									</div>
																<div  class="ristyA flexRow " >
										<a target="_blank" href="/course/1655.html" title="PHP新手语法线上课程教学">
											<img src="https://img.php.cn/upload/course/000/000/081/684a8c23d811b293.png?x-oss-process=image/resize,m_mfit,h_86,w_140,limit_0" alt="PHP新手语法线上课程教学" class="ristyAimg"
												onerror="this.src='/static/mobimages/moren/morentu.png'">
										</a>
										<div class="ristyaRight flexColumn">
											<a target="_blank" href="/course/1655.html" title="PHP新手语法线上课程教学"
												class="rirightp overflowclass">PHP新手语法线上课程教学</a>

											<div class="risrdown flexRow">
												<p>共13课时 | 0.9万人学习</p>
											</div>
										</div>
									</div>
														</div>
						<script>
							$('.jpkcTabs>div').click(function (e) {
								$('.jpkcTabs>div').removeClass('check')
								$(this).addClass('check')
								$('.jpkcTab .jpktabd').css('display', 'none')
								$('.' + e.currentTarget.dataset.id).show()
							})
						</script>

					</div>
				</div>

				<div class="zxarts ">
					<div class="rightdTitle flexRow">
						<div class="title-left flexRow"> <b></b>
							<p>最新文章</p>
						</div>
						<a class="rititle-more flexRow" href="" title="最新文章" target="_blank"><span>更多</span><b></b></a>
					</div>
					<div class="xgwzlist ">
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="XML上传接口的API文档怎么写 Swagger/OpenAPI如何定义文件上传" href="/faq/2049571.html">XML上传接口的API文档怎么写 Swagger/OpenAPI如何定义文件上传</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="R语言怎么读取和处理XML数据 R语言XML包教程" href="/faq/2049565.html">R语言怎么读取和处理XML数据 R语言XML包教程</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="Istio如何为XML上传服务实现流量管理和熔断" href="/faq/2047283.html">Istio如何为XML上传服务实现流量管理和熔断</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="XQuery在XML数据映射中的高级用法" href="/faq/2047258.html">XQuery在XML数据映射中的高级用法</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="Java解析XML时如何处理CDATA节点" href="/faq/2047254.html">Java解析XML时如何处理CDATA节点</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="C#如何验证XML文件的数字签名" href="/faq/2047249.html">C#如何验证XML文件的数字签名</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="XML数据脱敏在映射过程中如何实现" href="/faq/2047192.html">XML数据脱敏在映射过程中如何实现</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="XML的空白字符(Whitespace)处理规则是什么,解析器如何对待换行和缩进?" href="/faq/2047155.html">XML的空白字符(Whitespace)处理规则是什么,解析器如何对待换行和缩进?</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="XML上传到云存储 S3/OSS的上传SDK如何使用" href="/faq/2047115.html">XML上传到云存储 S3/OSS的上传SDK如何使用</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="Pretty Print是什么 如何用代码美化输出的XML" href="/faq/2047111.html">Pretty Print是什么 如何用代码美化输出的XML</a></div>
											</div>

				</div>






			</div>



		</div>

	</div>
	<!--底部-->
	<div class="phpFoot">
    <div class="phpFootIn">
        <div class="phpFootCont">
            <div class="phpFootLeft">
                <dl>
                    <dt>
                        <a target="_blank"  href="/about/us.html" rel="nofollow"  title="关于我们" class="cBlack">关于我们</a>
                        <a target="_blank"  href="/about/disclaimer.html" rel="nofollow"  title="免责申明" class="cBlack">免责申明</a>
                        <a target="_blank"  href="/about/jbzx.html" rel="nofollow"  title="举报中心" class="cBlack">举报中心</a>
                        <a   href="javascript:;" rel="nofollow" onclick="advice_data(99999999,'意见反馈')"   title="意见反馈" class="cBlack">意见反馈</a>
                        <a target="_blank"  href="https://www.php.cn/teacher.html" rel="nofollow"   title="讲师合作" class="cBlack">讲师合作</a>
                        <a  target="_blank" href="https://www.php.cn/blog/detail/20304.html" rel="nofollow"  title="广告合作" class="cBlack">广告合作</a>
                        <a  target="_blank" href="/new/"    title="最新文章列表" class="cBlack">最新更新</a>
                                                <div class="clear"></div>
                    </dt>
                    <dd class="cont1">php中文网:公益在线php培训,帮助PHP学习者快速成长!</dd>
                    <dd class="cont2">
                      <span class="ylwTopBox">
                        <a   href="javascript:;"  class="cBlack"><b class="icon1"></b>关注服务号</a>
                        <em style="display:none;" class="ylwTopSub">
                          <p>微信扫码<br/>关注PHP中文网服务号</p>
                          <img src="/static/images/examples/text16.png"/>
                        </em>
                      </span>
                        <span class="ylwTopBox">
                        <a   href="tencent://message/?uin=27220243&Site=www.php.cn&Menu=yes"  class="cBlack"><b class="icon2"></b>技术交流群</a>
                        <em style="display:none;" class="ylwTopSub">
                          <p>QQ扫码<br/>加入技术交流群</p>
                          <img src="/static/images/examples/text18.png"/>
                        </em>
                      </span>
                        <div class="clear"></div>
                    </dd>
                </dl>
                
            </div>
            <div class="phpFootRight">
                <div class="phpFootMsg">
                    <span><img src="/static/images/examples/text17.png"/></span>
                    <dl>
                        <dt>PHP中文网订阅号</dt>
                        <dd>每天精选资源文章推送</dd>
                    </dl>
                </div>
            </div>
        </div>
    </div>
    <div class="phpFootCode">
        <div class="phpFootCodeIn"><p>Copyright 2014-2026 <a   href="https://www.php.cn/" >https://www.php.cn/</a> All Rights Reserved | php.cn | <a   href="https://beian.miit.gov.cn/" rel="nofollow" >湘ICP备2023035733号</a></p><a   href="http://www.beian.gov.cn/portal/index.do" rel="nofollow" ><b></b></a></div>
    </div>
</div>
<input type="hidden" id="verifycode" value="/captcha.html">
<script>
    var _hmt = _hmt || [];
    (function() {
        var hm = document.createElement("script");
        hm.src = "https://hm.baidu.com/hm.js?c0e685c8743351838d2a7db1c49abd56";
        var s = document.getElementsByTagName("script")[0];
        s.parentNode.insertBefore(hm, s);
    })();
</script>
<script>layui.use(['element', 'carousel'], function () {var element = layui.element;$ = layui.jquery;var carousel = layui.carousel;carousel.render({elem: '#test1', width: '100%', height: '330px', arrow: 'always'});$.getScript('/static/js/jquery.lazyload.min.js', function () {$("img").lazyload({placeholder: "/static/images/load.jpg", effect: "fadeIn", threshold: 200, skip_invisible: false});});});</script>

<span class="layui-hide"><script type="text/javascript" src="https://s4.cnzz.com/z_stat.php?id=1280886301&web_id=1280886301"></script></span>

<script src="/static/js/cdn.js?v=1.0.1"></script>



	<!--底部 end-->
	<!-- content -->
	<!--
    <div class="phpFudong">
        <div class="phpFudongIn">
            <div class="phpFudongImg"></div>
            <div class="phpFudongXue">登录PHP中文网,和优秀的人一起学习!</div>
            <div class="phpFudongQuan">全站<span>2000+</span>教程免费学</div>
            <div class="phpFudongCode"><a   href="javascript:;" id="login" title="微信扫码登录">微信扫码登录</a></div>
            <div class="phpGuanbi" onclick="$('.phpFudong').hide();"></div>
            <div class="clear"></div>
        </div>
    </div>
-->	<!--底部浮动层 end-->
	<!--侧导航-->
	<style>
    .layui-fixbar{display: none;}
</style>
<div class="phpSdhBox" style="height:240px !important;">
    <li>
        <div class="phpSdhIn">
            <div class="phpSdhTitle">
                <a   href="/k24.html"  class="hover" title="PHP学习">
                    <b class="icon1"></b>
                    <p>PHP学习</p>
                </a>
            </div>
        </div>
    </li>
    <li>
        <div class="phpSdhIn">
            <div class="phpSdhTitle">
                <a   href="https://www.php.cn/blog/detail/1047189.html" >
                    <b class="icon2"></b>
                    <p>技术支持</p>
                </a>
            </div>
        </div>
    </li>
    <li>
        <div class="phpSdhIn">
            <div class="phpSdhTitle">
                <a   href="#">
                    <b class="icon6"></b>
                    <p>返回顶部</p>
                </a>
            </div>
        </div>
    </li>
</div>
	</body>

</html>

<script type="text/javascript" src="/hitsUp?type=article&id=1469164&time=1769804580">
</script>
<script src="/static/ueditor/third-party/SyntaxHighlighter/shCore.js?1769804580"></script>
<script>
	article_status = "1522179";
</script>
<input type="hidden" id="verifycode" value="/captcha.html">
<script type="text/javascript" src="/static/js/global.min.js?5.5.33"></script>
<link rel='stylesheet' id='_main-css' href='/static/css/viewer.min.css?2' type='text/css' media='all' />
<script type='text/javascript' src='/static/js/viewer.min.js?1'></script>
<script type='text/javascript' src='/static/js/jquery-viewer.min.js'></script>
<script type="text/javascript" src="/static/js/jquery.cookie.js"></script>
<script>var _hmt = _hmt || [];(function(){var hm = document.createElement("script");hm.src="//hm.baidu.com/hm.js?c0e685c8743351838d2a7db1c49abd56";var s=document.getElementsByTagName("script")[0];s.parentNode.insertBefore(hm, s);})();(function(){var bp = document.createElement('script');var curProtocol = window.location.protocol.split(':')[0];if(curProtocol === 'https'){bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';}else{bp.src = 'http://push.zhanzhang.baidu.com/push.js';};var s = document.getElementsByTagName("script")[0];s.parentNode.insertBefore(bp, s);})();</script>
	

<script>
	function setCookie(name, value, iDay) { //name相当于键,value相当于值,iDay为要设置的过期时间(天)
		var oDate = new Date();
		oDate.setDate(oDate.getDate() + iDay);
		document.cookie = name + '=' + value + ';path=/;domain=.php.cn;expires=' + oDate;
	}

	function getCookie(name) {
		var cookieArr = document.cookie.split(";");
		for (var i = 0; i < cookieArr.length; i++) {
			var cookiePair = cookieArr[i].split("=");
			if (name == cookiePair[0].trim()) {
				return decodeURIComponent(cookiePair[1]);
			}
		}
		return null;
	}
</script>


<!-- Matomo -->
<script>
	var _paq = window._paq = window._paq || [];
	/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
	_paq.push(['trackPageView']);
	_paq.push(['enableLinkTracking']);
	(function () {
		var u = "https://tongji.php.cn/";
		_paq.push(['setTrackerUrl', u + 'matomo.php']);
		_paq.push(['setSiteId', '7']);
		var d = document,
			g = d.createElement('script'),
			s = d.getElementsByTagName('script')[0];
		g.async = true;
		g.src = u + 'matomo.js';
		s.parentNode.insertBefore(g, s);
	})();
</script>
<!-- End Matomo Code -->

<script>
	setCookie('is_article', 1, 1);
</script>

<script>
	var is_login = "0";
        var show = 0;
        var ceng = getCookie('ceng');
        //未登录复制显示登录按钮
        if(is_login == 0 && false){
            $(".code").hover(function(){
                $(this).find('.contentsignin').show();
            },function(){
                $(this).find('.contentsignin').hide();
            });
            //不给复制
            $('.code').bind("cut copy paste",function(e) {
                e.preventDefault();
            });
            $('.code .contentsignin').click(function(){
                $(document).trigger("api.loginpopbox");
            })
        }else{
            // 获取所有的 <pre> 元素
            var preElements = document.querySelectorAll('pre');
            preElements.forEach(function(preElement) {
                // 创建复制按钮
                var copyButton = document.createElement('button');
                copyButton.className = 'copy-button';
                copyButton.textContent = '复制';
                // 添加点击事件处理程序
                copyButton.addEventListener('click', function() {
                    // 获取当前按钮所属的 <pre> 元素中的文本内容
                    var textContent = preElement.textContent.trim();
                    // 创建一个临时 textarea 元素并设置其值为 <pre> 中的文本内容
                    var tempTextarea = document.createElement('textarea');
                    tempTextarea.value = textContent;
                    // 将临时 textarea 添加到文档中
                    document.body.appendChild(tempTextarea);
                    // 选中临时 textarea 中的文本内容并执行复制操作
                    tempTextarea.select();
                    document.execCommand('copy');
                    // 移除临时 textarea 元素
                    document.body.removeChild(tempTextarea);
                    // 更新按钮文本为 "已复制"
                    this.textContent = '已复制';
                });

                // 创建AI写代码按钮
                var aiButton = document.createElement('button');
                aiButton.className = 'copy-button';
                aiButton.textContent = 'AI写代码';
                aiButton.style.marginLeft = '5px';
                aiButton.style.marginRight = '5px';
                // 添加点击事件处理程序
                aiButton.addEventListener('click', function() {
                // Generate a random number between 0 and 1
                        var randomChance = Math.random();

                    // If the random number is less than 0.5, open the first URL, else open the second
                    if (randomChance < 0.5) {
                        window.open('https://www.doubao.com/chat/coding?channel=php&source=hw_db_php', '_blank');
                    } else {
                        window.open('https://click.aliyun.com/m/1000402709/', '_blank');
                    }
                });

                // 将按钮添加到 <pre> 元素前面
                preElement.parentNode.insertBefore(copyButton, preElement);
                preElement.parentNode.insertBefore(aiButton, preElement);
        });
        }
</script>