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)而言:

美图AI开放平台
美图AI开放平台

美图推出的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/2011477.html" title="WCF服务如何接收XML文件 WCF如何处理流式传输"><b></b>
										<p class="overflowclass">WCF服务如何接收XML文件 WCF如何处理流式传输</p>
									</a>
																	<a class="artmrlis flexRow" href="/faq/2011421.html" title="如何用正则表达式辅助提取XML中的非结构化数据"><b></b>
										<p class="overflowclass">如何用正则表达式辅助提取XML中的非结构化数据</p>
									</a>
																	<a class="artmrlis flexRow" href="/faq/2011419.html" title="如何处理SOAP with Attachments (SwA)中的XML上传"><b></b>
										<p class="overflowclass">如何处理SOAP with Attachments (SwA)中的XML上传</p>
									</a>
																	<a class="artmrlis flexRow" href="/faq/2011387.html" title="Playwright如何处理文件上传 input.setInputFiles用法"><b></b>
										<p class="overflowclass">Playwright如何处理文件上传 input.setInputFiles用法</p>
									</a>
																	<a class="artmrlis flexRow" href="/faq/2011074.html" title="XML解析错误“实体未定义”是什么原因"><b></b>
										<p class="overflowclass">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=php" target="_blank">php</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=html" target="_blank">html</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/2014383.html" title="Win11怎么设置双系统 Windows11和Windows10共存安装方法"><b></b>
												<p class="overflowclass">Win11怎么设置双系统 Windows11和Windows10共存安装方法</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-21 19:39</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2014387.html" title="蓝海搜书小说精准搜索入口 蓝海搜书在线搜书神器"><b></b>
												<p class="overflowclass">蓝海搜书小说精准搜索入口 蓝海搜书在线搜书神器</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-21 19:39</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2014403.html" title="哔哩轻小说官网入口_官方正版轻小说阅读平台"><b></b>
												<p class="overflowclass">哔哩轻小说官网入口_官方正版轻小说阅读平台</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-21 19:42</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2014421.html" title="Win10怎么关闭Cortana小娜 Windows10彻底卸载Cortana教程"><b></b>
												<p class="overflowclass">Win10怎么关闭Cortana小娜 Windows10彻底卸载Cortana教程</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-21 19:45</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2014471.html" title="皮皮喵漫画防迷路入口 皮皮喵漫画永久回家地址"><b></b>
												<p class="overflowclass">皮皮喵漫画防迷路入口 皮皮喵漫画永久回家地址</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-21 19:52</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2014476.html" title="漫蛙manwa2紧急入口_漫蛙漫画防走失发布页"><b></b>
												<p class="overflowclass">漫蛙manwa2紧急入口_漫蛙漫画防走失发布页</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-21 19:53</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2014553.html" title="Win10正式版永久激活工具,绿色无毒版推荐"><b></b>
												<p class="overflowclass">Win10正式版永久激活工具,绿色无毒版推荐</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-21 20:07</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2014597.html" title="win10电脑开机速度慢 5个有效提速优化技巧"><b></b>
												<p class="overflowclass">win10电脑开机速度慢 5个有效提速优化技巧</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-21 20:14</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2014613.html" title="Win11怎么开启游戏模式 Windows11提升游戏帧数设置教程"><b></b>
												<p class="overflowclass">Win11怎么开启游戏模式 Windows11提升游戏帧数设置教程</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-21 20:18</p>
											</div>
										</div>
								</div>
																	<div class="authlist flexColumn">
										<div class="autharts flexRow">
											<a class="autharta flexRow " href="/faq/2014644.html" title="解决Win10右下角“激活Windows”水印的终极方法"><b></b>
												<p class="overflowclass">解决Win10右下角“激活Windows”水印的终极方法</p>
											</a>
											<div class="authtime flexRow"><b></b>
												<p>2026-01-21 20:25</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  check ">
										<a target="_blank" href="/ai/723" title="DeepSeek" class="aibtns 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'">
											<div class="aibtn-right flexColumn">
												<p class="overflowclass abripone">DeepSeek</p>
												<p class="overflowclass abriptwo">幻方量化公司旗下的开源大模型平台</p>
																									<div class="aidconstab flexRow">
																												<p href="/ai/tag/code/large-model" title="AI大模型" class="aidcontbp flexRow flexcenter">AI大模型</p>
																													<p href="/ai/tag/code/open-plat" title="开放平台" class="aidcontbp flexRow flexcenter">开放平台</p>
																											</div>
																							</div>
										</a>
									</div>
																	<div class="aidcons flexRow  check ">
										<a target="_blank" href="/ai/726" title="豆包大模型" class="aibtns 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'">
											<div class="aibtn-right flexColumn">
												<p class="overflowclass abripone">豆包大模型</p>
												<p class="overflowclass abriptwo">字节跳动自主研发的一系列大型语言模型</p>
																									<div class="aidconstab flexRow">
																												<p href="/ai/tag/code/large-model" title="AI大模型" class="aidcontbp flexRow flexcenter">AI大模型</p>
																											</div>
																							</div>
										</a>
									</div>
																	<div class="aidcons flexRow  check ">
										<a target="_blank" href="/ai/725" title="通义千问" class="aibtns 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'">
											<div class="aibtn-right flexColumn">
												<p class="overflowclass abripone">通义千问</p>
												<p class="overflowclass abriptwo">阿里巴巴推出的全能AI助手</p>
																									<div class="aidconstab flexRow">
																												<p href="/ai/tag/code/large-model" title="AI大模型" class="aidcontbp flexRow flexcenter">AI大模型</p>
																											</div>
																							</div>
										</a>
									</div>
																	<div class="aidcons flexRow  check ">
										<a target="_blank" href="/ai/854" title="腾讯元宝" class="aibtns 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'">
											<div class="aibtn-right flexColumn">
												<p class="overflowclass abripone">腾讯元宝</p>
												<p class="overflowclass abriptwo">腾讯混元平台推出的AI助手</p>
																									<div class="aidconstab flexRow">
																												<p href="/ai/tag/office/docs" title="文档处理" class="aidcontbp flexRow flexcenter">文档处理</p>
																													<p href="/ai/tag/office/excel" title="Excel 表格" class="aidcontbp flexRow flexcenter">Excel 表格</p>
																											</div>
																							</div>
										</a>
									</div>
																	<div class="aidcons flexRow  check ">
										<a target="_blank" href="/ai/724" title="文心一言" class="aibtns 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'">
											<div class="aibtn-right flexColumn">
												<p class="overflowclass abripone">文心一言</p>
												<p class="overflowclass abriptwo">文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。</p>
																									<div class="aidconstab flexRow">
																												<p href="/ai/tag/code/large-model" title="AI大模型" class="aidcontbp flexRow flexcenter">AI大模型</p>
																													<p href="/ai/tag/text/chinese-writing" title="中文写作" class="aidcontbp flexRow flexcenter">中文写作</p>
																											</div>
																							</div>
										</a>
									</div>
																	<div class="aidcons flexRow  check ">
										<a target="_blank" href="/ai/1507" title="讯飞写作" class="aibtns 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'">
											<div class="aibtn-right flexColumn">
												<p class="overflowclass abripone">讯飞写作</p>
												<p class="overflowclass abriptwo">基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿</p>
																									<div class="aidconstab flexRow">
																												<p href="/ai/tag/text/chinese-writing" title="中文写作" class="aidcontbp flexRow flexcenter">中文写作</p>
																													<p href="/ai/tag/text/write" title="写作工具" class="aidcontbp flexRow flexcenter">写作工具</p>
																											</div>
																							</div>
										</a>
									</div>
																	<div class="aidcons flexRow  check ">
										<a target="_blank" href="/ai/1115" title="即梦AI" class="aibtns 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'">
											<div class="aibtn-right flexColumn">
												<p class="overflowclass abripone">即梦AI</p>
												<p class="overflowclass abriptwo">一站式AI创作平台,免费AI图片和视频生成。</p>
																									<div class="aidconstab flexRow">
																												<p href="/ai/tag/image/image-titching" title="图片拼接" class="aidcontbp flexRow flexcenter">图片拼接</p>
																													<p href="/ai/tag/image/image-create" title="图画生成" class="aidcontbp flexRow flexcenter">图画生成</p>
																											</div>
																							</div>
										</a>
									</div>
																	<div class="aidcons flexRow  check ">
										<a target="_blank" href="/ai/808" title="ChatGPT" class="aibtns 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'">
											<div class="aibtn-right flexColumn">
												<p class="overflowclass abripone">ChatGPT</p>
												<p class="overflowclass abriptwo">最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。</p>
																									<div class="aidconstab flexRow">
																												<p href="/ai/tag/code/large-model" title="AI大模型" class="aidcontbp flexRow flexcenter">AI大模型</p>
																													<p href="/ai/tag/text/chinese-writing" title="中文写作" class="aidcontbp flexRow flexcenter">中文写作</p>
																											</div>
																							</div>
										</a>
									</div>
																	<div class="aidcons flexRow  check ">
										<a target="_blank" href="/ai/821" title="智谱清言 - 免费全能的AI助手" class="aibtns 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'">
											<div class="aibtn-right flexColumn">
												<p class="overflowclass abripone">智谱清言 - 免费全能的AI助手</p>
												<p class="overflowclass abriptwo">智谱清言 - 免费全能的AI助手</p>
																									<div class="aidconstab flexRow">
																												<p href="/ai/tag/code/large-model" title="AI大模型" class="aidcontbp flexRow flexcenter">AI大模型</p>
																													<p href="/ai/tag/office/pdf" title="PDF 文档" class="aidcontbp flexRow flexcenter">PDF 文档</p>
																											</div>
																							</div>
										</a>
									</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/phpwjzmdk" class="aClass flexRow hotzta" title="php文件怎么打开"><img
										src="https://img.php.cn/upload/subject/202309/01/2023090111533461500.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="php文件怎么打开" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/phpwjzmdk" class="aClass flexRow hotztra overflowclass" title="php文件怎么打开">php文件怎么打开</a>
									<p class="aClass flexRow hotztrp overflowclass">打开php文件步骤:1、选择文本编辑器;2、在选择的文本编辑器中,创建一个新的文件,并将其保存为.php文件;3、在创建的PHP文件中,编写PHP代码;4、要在本地计算机上运行PHP文件,需要设置一个服务器环境;5、安装服务器环境后,需要将PHP文件放入服务器目录中;6、一旦将PHP文件放入服务器目录中,就可以通过浏览器来运行它。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">2744</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2023.09.01</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/phpzmqcszys" class="aClass flexRow hotzta" title="php怎么取出数组的前几个元素"><img
										src="https://img.php.cn/upload/subject/202310/11/2023101111394597302.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="php怎么取出数组的前几个元素" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/phpzmqcszys" class="aClass flexRow hotztra overflowclass" title="php怎么取出数组的前几个元素">php怎么取出数组的前几个元素</a>
									<p class="aClass flexRow hotztrp overflowclass">取出php数组的前几个元素的方法有使用array_slice()函数、使用array_splice()函数、使用循环遍历、使用array_slice()函数和array_values()函数等。本专题为大家提供php数组相关的文章、下载、课程内容,供大家免费下载体验。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">1675</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2023.10.11</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/phpfxlsb" class="aClass flexRow hotzta" title="php反序列化失败怎么办"><img
										src="https://img.php.cn/upload/subject/202310/11/2023101111442515737.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="php反序列化失败怎么办" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/phpfxlsb" class="aClass flexRow hotztra overflowclass" title="php反序列化失败怎么办">php反序列化失败怎么办</a>
									<p class="aClass flexRow hotztrp overflowclass">php反序列化失败的解决办法检查序列化数据。检查类定义、检查错误日志、更新PHP版本和应用安全措施等。本专题为大家提供php反序列化相关的文章、下载、课程内容,供大家免费下载体验。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">1533</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2023.10.11</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/phpljmssql" class="aClass flexRow hotzta" title="php怎么连接mssql数据库"><img
										src="https://img.php.cn/upload/subject/202310/23/2023102311474720631.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="php怎么连接mssql数据库" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/phpljmssql" class="aClass flexRow hotztra overflowclass" title="php怎么连接mssql数据库">php怎么连接mssql数据库</a>
									<p class="aClass flexRow hotztrp overflowclass">连接方法:1、通过mssql_系列函数;2、通过sqlsrv_系列函数;3、通过odbc方式连接;4、通过PDO方式;5、通过COM方式连接。想了解php怎么连接mssql数据库的详细内容,可以访问下面的文章。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">995</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2023.10.23</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/phpljmssqlsjk" class="aClass flexRow hotzta" title="php连接mssql数据库的方法"><img
										src="https://img.php.cn/upload/subject/202310/23/2023102312044461242.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="php连接mssql数据库的方法" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/phpljmssqlsjk" class="aClass flexRow hotztra overflowclass" title="php连接mssql数据库的方法">php连接mssql数据库的方法</a>
									<p class="aClass flexRow hotztrp overflowclass">php连接mssql数据库的方法有使用PHP的MSSQL扩展、使用PDO等。想了解更多php连接mssql数据库相关内容,可以阅读本专题下面的文章。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">1464</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2023.10.23</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/htmlzmsc" class="aClass flexRow hotzta" title="html怎么上传"><img
										src="https://img.php.cn/upload/subject/202311/03/2023110309571979057.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="html怎么上传" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/htmlzmsc" class="aClass flexRow hotztra overflowclass" title="html怎么上传">html怎么上传</a>
									<p class="aClass flexRow hotztrp overflowclass">html通过使用HTML表单、JavaScript和PHP上传。更多关于html的问题详细请看本专题下面的文章。php中文网欢迎大家前来学习。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">1235</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2023.11.03</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/phpcxlmzmjj" class="aClass flexRow hotzta" title="PHP出现乱码怎么解决"><img
										src="https://img.php.cn/upload/subject/202311/09/2023110909430246458.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="PHP出现乱码怎么解决" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/phpcxlmzmjj" class="aClass flexRow hotztra overflowclass" title="PHP出现乱码怎么解决">PHP出现乱码怎么解决</a>
									<p class="aClass flexRow hotztrp overflowclass">PHP出现乱码可以通过修改PHP文件头部的字符编码设置、检查PHP文件的编码格式、检查数据库连接设置和检查HTML页面的字符编码设置来解决。更多关于php乱码的问题详情请看本专题下面的文章。php中文网欢迎大家前来学习。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">1549</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2023.11.09</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/phpwjzmzsjsdk" class="aClass flexRow hotzta" title="php文件怎么在手机上打开"><img
										src="https://img.php.cn/upload/subject/202311/13/2023111311092751784.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="php文件怎么在手机上打开" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/phpwjzmzsjsdk" class="aClass flexRow hotztra overflowclass" title="php文件怎么在手机上打开">php文件怎么在手机上打开</a>
									<p class="aClass flexRow hotztrp overflowclass">php文件在手机上打开需要在手机上搭建一个能够运行php的服务器环境,并将php文件上传到服务器上。再在手机上的浏览器中输入服务器的IP地址或域名,加上php文件的路径,即可打开php文件并查看其内容。更多关于php相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">1307</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2023.11.13</p>
										</div>
									</div>
								</div>
							</div>
													<div class="hotztlls flexRow">
								<a target="_blank" href="/faq/aszwbrkdzdq" class="aClass flexRow hotzta" title="AO3中文版入口地址大全"><img
										src="https://img.php.cn/upload/subject/000/000/075/6970d0d5dd6e9743.png?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="AO3中文版入口地址大全" class="hotztaimg"
										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
								<div class="hotztright flexColumn">
									<a target="_blank" href="/faq/aszwbrkdzdq" class="aClass flexRow hotztra overflowclass" title="AO3中文版入口地址大全">AO3中文版入口地址大全</a>
									<p class="aClass flexRow hotztrp overflowclass">本专题整合了AO3中文版入口地址大全,阅读专题下面的的文章了解更多详细内容。</p>
									<div class="hotztrdown flexRow">
										<div class="htztdsee flexRow"> <b></b>
											<p class="">1</p>
										</div>
										<div class="htztdTime flexRow"> <b></b>
											<p>2026.01.21</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="Tooltip验证提示HTML5表单" href="/xiazai/js/8570"><span>[表单按钮]</span><span>Tooltip验证提示HTML5表单</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="css3实现结账Form表单 css3实现结账Form表单网页特效" href="/xiazai/js/8569"><span>[表单按钮]</span><span>css3实现结账Form表单 css3实现结账Form表单网页特效</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="简单js图片加载从模糊到清晰代码" href="/xiazai/js/8568"><span>[图片特效]</span><span>简单js图片加载从模糊到清晰代码</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="表单Checkbox元素美化特效" href="/xiazai/js/8567"><span>[表单按钮]</span><span>表单Checkbox元素美化特效</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="正益无线首页jQuery焦点图" href="/xiazai/js/8566"><span>[图片特效]</span><span>正益无线首页jQuery焦点图</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="jQuery仿去哪儿城市选择代码" href="/xiazai/js/8565"><span>[表单按钮]</span><span>jQuery仿去哪儿城市选择代码</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="jQuery智能炫酷的翻页相册" href="/xiazai/js/8564"><span>[图片特效]</span><span>jQuery智能炫酷的翻页相册</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="注册表单密码验证提示代码" href="/xiazai/js/8563"><span>[表单按钮]</span><span>注册表单密码验证提示代码</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="JS用户反馈表单提交代码" href="/xiazai/js/8562"><span>[表单按钮]</span><span>JS用户反馈表单提交代码</span></a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" title="jQuery悬停图片翻转展示背面代码" href="/xiazai/js/8561"><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/4232" title="2026新春喜庆红色边框矢量素材"><span>[网站素材]</span><span>2026新春喜庆红色边框矢量素材</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4231" title="绿色风格旅行竖版海报PSD素材下载"><span>[网站素材]</span><span>绿色风格旅行竖版海报PSD素材下载</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4230" title="极简非洲草原风景装饰矢量素材"><span>[网站素材]</span><span>极简非洲草原风景装饰矢量素材</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4229" title="网络金融货币宣传海报设计下载"><span>[网站素材]</span><span>网络金融货币宣传海报设计下载</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4228" title="复古手绘红酒奶酪菜单矢量模板"><span>[网站素材]</span><span>复古手绘红酒奶酪菜单矢量模板</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4227" title="橙色复古户外探险卡片矢量模板"><span>[网站素材]</span><span>橙色复古户外探险卡片矢量模板</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4226" title="小清新情人节海报传单模板PSD下载"><span>[网站素材]</span><span>小清新情人节海报传单模板PSD下载</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4225" title="复古户外探险森林黑熊矢量素材"><span>[网站素材]</span><span>复古户外探险森林黑熊矢量素材</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4224" title="2026新春马年极简线条矢量素材"><span>[网站素材]</span><span>2026新春马年极简线条矢量素材</span> </a>
									</div>
								</li>
															<li>
									<div class="wzrfourli flexRow">
										<b></b>
										<a target="_blank" href="/xiazai/sucai/4223" title="莫兰迪色块抽象女性矢量插画"><span>[网站素材]</span><span>莫兰迪色块抽象女性矢量插画</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.3万人学习</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.2万人学习</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课时 | 9.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.4万人学习</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课时 | 10.8万人学习</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课时 | 9.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="Mule配置文件是什么 如何用XML来编排API和集成" href="/faq/2015004.html">Mule配置文件是什么 如何用XML来编排API和集成</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="RSS订阅源怎么制作 符合标准的RSS XML文件编写方法" href="/faq/2014965.html">RSS订阅源怎么制作 符合标准的RSS XML文件编写方法</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="MeiliSearch/Typesense如何索引和搜索XML内容" href="/faq/2014947.html">MeiliSearch/Typesense如何索引和搜索XML内容</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="multipart/form-data是什么 如何用它来上传XML文件" href="/faq/2014945.html">multipart/form-data是什么 如何用它来上传XML文件</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="使用正则表达式辅助XML数据映射" href="/faq/2014939.html">使用正则表达式辅助XML数据映射</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="Checkstyle配置文件XML怎么写 Checkstyle规则配置" href="/faq/2014925.html">Checkstyle配置文件XML怎么写 Checkstyle规则配置</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="在线XML美化工具 XML代码格式化" href="/faq/2014903.html">在线XML美化工具 XML代码格式化</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="Splunk如何接收和索引上传的XML数据" href="/faq/2014894.html">Splunk如何接收和索引上传的XML数据</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="Ruby Nokogiri库如何处理大型XML文件的上传和解析" href="/faq/2014860.html">Ruby Nokogiri库如何处理大型XML文件的上传和解析</a></div>
													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="xml文件怎么创建【教程】" href="/faq/2012695.html">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=1769034986">
</script>
<script src="/static/ueditor/third-party/SyntaxHighlighter/shCore.js?1769034986"></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>