0

0

RSS订阅如何异常监控?

煙雲

煙雲

发布时间:2025-09-09 12:33:01

|

598人浏览过

|

来源于php中文网

原创

答案:RSS订阅异常监控需建立正常基线,通过持续比对更新频率、内容结构、条目数量、HTTP状态等维度发现偏差,并结合分级告警与重试机制避免误报。具体可采用自定义脚本(如Python+feedparser)或Serverless架构实现自动化抓取、解析、存储与告警,同时根据历史数据动态调整阈值,以应对服务器故障、CMS插件问题、数据迁移等原因导致的订阅失灵。

rss订阅如何异常监控?

RSS订阅的异常监控,在我看来,核心在于建立一个“正常”的基线,然后持续地、自动化地比对当前状态与这个基线,一旦出现显著偏差,就及时发出预警。这不仅仅是检查RSS链接是否活着,更要深入到内容层面,去感知那些微妙但关键的变化,比如更新频率、内容结构甚至是单个条目的完整性。

解决方案

要实现RSS订阅的异常监控,我们需要一套系统化的方法,这套方法可以分解为几个关键步骤。首先,是数据采集与基线建立。你需要一个程序或服务,定期(比如每小时或更频繁)去抓取目标RSS源。第一次抓取时,记录下它的“指纹”:有多少条目、最新条目的发布时间、标题、链接,甚至可以计算整个feed内容的哈希值。这个就是你的“正常”状态。

接着,是持续监控与差异比对。在后续的每次抓取中,都将新抓取到的feed与之前记录的基线和历史数据进行比对。比对的维度可以有很多:

  1. 更新频率异常: 如果一个RSS源平时每天更新好几次,突然三天都没动静,这显然是个异常。反之,如果一个平时月更的源突然一天更新了几十条,也可能意味着某种问题(比如数据回溯、批量导入,甚至是被滥用)。
  2. 内容结构变化: RSS是XML格式,如果突然出现解析错误,或者预期的标签(如
    </pre>、<pre class="brush:php;toolbar:false;"><link></pre>、<pre class="brush:php;toolbar:false;"><pubDate></pre>)缺失或结构错乱,这通常是源站生成RSS时出了问题。</li>
    <li>
    <strong>条目数量异常:</strong> 突然少了大量条目(被清理了?),或者突然多了非常规数量的条目(数据泄露?垃圾信息注入?)。</li>
    <li>
    <strong>HTTP状态码异常:</strong> 抓取时返回404(页面不存在)、500(服务器错误)、503(服务不可用)等非200状态码,这是最直接的异常信号。</li>
    <li>
    <strong>内容完整性或格式异常:</strong> 有时RSS源本身是可访问的,但其内部的某些关键字段(比如文章的完整链接)是空的或不合法的。更高级一点,可以比对某个关键字段(如文章标题)的字符集或长度是否符合预期。</li>
    </ol>
    <p>最后,是<strong>告警与处理机制</strong>。一旦检测到上述任何一种异常,系统就应该立即通过预设的渠道(如邮件、Slack通知、Webhook到内部系统)发出告警。告警信息应该包含足够多的上下文,比如哪个RSS源出了问题、具体是什么类型的异常、发生时间等,以便快速定位和处理。</p>
    <h3>为什么RSS订阅会突然“失灵”或更新异常?</h3>
    <p>说实话,RSS订阅的“失灵”或更新异常,原因往往是多方面的,而且很多时候并非订阅者本身的问题。这就像你每天看报纸,有一天报纸突然不送了,或者送来的报纸内容完全不对劲,问题通常出在发行方或印刷厂。</p>
    <p>在我接触过的案例里,最常见的原因是<strong>源站(内容发布方)自身的问题</strong>。比如:</p>
    <ul>
    <li>
    <strong>服务器故障或维护:</strong> 网站宕机、数据库连接失败、服务器过载,这些都会导致RSS生成服务不可用。HTTP 5xx错误就是这类问题的典型表现。</li>
    <li>
    <strong>CMS(内容管理系统)或插件故障:</strong> 很多网站的RSS是CMS自动生成的,如果CMS升级出错、某个生成RSS的插件崩溃或配置错误,RSS输出就可能停止或出现乱码。我见过因为WordPress某个插件冲突,导致RSS输出XML格式不正确的情况。</li>
    <li>
    <strong>数据源变更或迁移:</strong> 网站改版、内容迁移、更换后端数据存储,这些都可能不小心破坏了原有的RSS生成逻辑。</li>
    <li>
    <strong>网络问题:</strong> 你的监控服务与源站之间的网络连接不稳定,导致抓取超时或失败。这可能是一时的波动,也可能是更深层次的路由问题。</li>
    <li>
    <strong>内容策略调整:</strong> 少数情况下,发布者可能会主动调整RSS的内容输出策略,比如只输出摘要、移除某些字段,甚至完全停止提供RSS服务。这虽然不是技术故障,但对订阅者来说,也是一种“异常”。</li>
    <li>
    <strong>被监控方反爬/限流:</strong> 如果你的监控频率过高,或者IP地址被识别为爬虫,源站可能会对你的IP进行临时或永久的封禁,导致你无法正常访问。</li>
    </ul>
    <p>理解这些潜在原因,有助于我们设计更健壮的监控策略,并能在收到告警时,更快地判断问题出在哪里。</p>
    <h3>有哪些实用的技术手段可以实现RSS异常监控?</h3>
    <p>要真正动手去实现RSS异常监控,技术手段其实挺多,选择哪种取决于你的技术栈偏好、监控规模以及对灵活性的要求。我个人比较推荐以下几种:</p>
    <ol>
    <li>
    <p><strong>自定义脚本(Python/Node.<a style="color:#f60; text-decoration:underline;" title="js" href="https://www.php.cn/zt/15802.html" target="_blank">js</a>/PHP等)</strong>:
    这是最灵活也最直接的方式。你可以用自己熟悉的语言编写脚本。</p>
    <ul>
    <li><p><strong>HTTP请求库:</strong> 比如Python的<pre class="brush:php;toolbar:false;">requests</pre>库,Node.js的<pre class="brush:php;toolbar:false;">axios</pre>或内置<pre class="brush:php;toolbar:false;">http/https</pre>模块,用来定时抓取RSS URL。</p></li>
    <li><p><strong>XML/RSS解析库:</strong> Python有<pre class="brush:php;toolbar:false;">feedparser</pre>,Node.js有<pre class="brush:php;toolbar:false;">xml2js</pre>或<pre class="brush:php;toolbar:false;">rss-parser</pre>,PHP有<pre class="brush:php;toolbar:false;">SimpleXML</pre>,这些库能帮你把RSS的XML结构解析成易于操作的数据对象。</p><div class="aritcle_card flexRow">
    							<div class="artcardd flexRow">
    								<a class="aritcle_card_img" href="/ai/905" title="SlidesAI"><img
    										src="https://img.php.cn/upload/ai_manual/000/000/000/175679993562986.png" alt="SlidesAI"></a>
    								<div class="aritcle_card_info flexColumn">
    									<a href="/ai/905" title="SlidesAI">SlidesAI</a>
    									<p>使用SlidesAI的AI在几秒钟内创建演示文稿幻灯片</p>
    								</div>
    								<a href="/ai/905" title="SlidesAI" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span> </a>
    							</div>
    						</div></li>
    <li><p><strong>数据存储:</strong> 将每次抓取到的关键数据(如最新条目、条目数量、哈希值)存入数据库(SQLite、PostgreSQL、Mon<a style="color:#f60; text-decoration:underline;" title="go" href="https://www.php.cn/zt/15863.html" target="_blank">go</a>DB等)或文件系统,以便进行历史比对。</p></li>
    <li><p><strong>调度器:</strong> 利用操作系统的<pre class="brush:php;toolbar:false;">cron</pre>(Linux/macOS)或Windows的任务计划程序,定时执行你的脚本。更高级的,可以在应用内部使用<pre class="brush:php;toolbar:false;">APScheduler</pre>(Python)或<pre class="brush:php;toolbar:false;">node-schedule</pre>(Node.js)等库进行任务调度。</p></li>
    <li><p><strong>告警集成:</strong> 脚本中集成邮件发送(SMTP库)、Slack/钉钉/企业微信Webhook、Telegram Bot API等,将告警信息发送出去。</p></li>
    <li>
    <p><strong>示例(Python片段):</strong></p><pre class='brush:python;toolbar:false;'>import feedparser
    import requests
    import hashlib
    import json
    from datetime import datetime
    
    # 假设这是你的RSS URL
    FEED_URL = "https://example.com/feed.xml"
    # 存储历史数据的简单方式,实际可用数据库
    HISTORY_FILE = "rss_history.json"
    
    def get_feed_data(url):
        try:
            response = requests.get(url, timeout=10)
            response.raise_for_status() # 检查HTTP错误
            feed = feedparser.parse(response.content)
            if feed.bozo: # 检查RSS解析错误
                print(f"Warning: Malformed RSS for {url}: {feed.bozo_exception}")
                return None
            return feed
        except requests.exceptions.RequestException as e:
            print(f"Error fetching {url}: {e}")
            return None
    
    def calculate_feed_hash(feed):
        # 简单地对所有条目的标题和链接进行哈希
        # 实际可以更复杂,包含pubDate, description等
        items_str = ""
        for entry in feed.entries:
            items_str += entry.get('title', '') + entry.get('link', '')
        return hashlib.md5(items_str.encode('utf-8')).hexdigest()
    
    def monitor_rss():
        current_feed = get_feed_data(FEED_URL)
        if not current_feed:
            # 发送告警:无法获取或解析RSS
            print(f"ALERT: Failed to fetch or parse RSS from {FEED_URL}")
            return
    
        current_hash = calculate_feed_hash(current_feed)
        current_item_count = len(current_feed.entries)
        latest_pub_date = None
        if current_item_count > 0:
            latest_pub_date = current_feed.entries[0].get('published_parsed')
            if latest_pub_date:
                latest_pub_date = datetime(*latest_pub_date[:6]).isoformat()
    
        # 加载历史数据
        history = {}
        try:
            with open(HISTORY_FILE, 'r') as f:
                history = json.load(f)
        except (FileNotFoundError, json.JSONDecodeError):
            pass # 首次运行或文件损坏
    
        last_data = history.get(FEED_URL)
    
        if last_data:
            # 比对逻辑
            if current_hash != last_data['hash']:
                print(f"ALERT: Content hash changed for {FEED_URL}")
            if current_item_count != last_data['item_count']:
                print(f"ALERT: Item count changed for {FEED_URL}: {last_data['item_count']} -> {current_item_count}")
            if latest_pub_date and last_data['latest_pub_date'] and \
               latest_pub_date <= last_data['latest_pub_date']:
                print(f"ALERT: No new items or older items found for {FEED_URL}")
            # 还可以加入更多比对,如更新频率、特定关键词等
    
        # 更新历史数据
        history[FEED_URL] = {
            'timestamp': datetime.now().isoformat(),
            'hash': current_hash,
            'item_count': current_item_count,
            'latest_pub_date': latest_pub_date
        }
        with open(HISTORY_FILE, 'w') as f:
            json.dump(history, f, indent=4)
    
    # 实际部署时会由cron或调度器调用 monitor_rss()
    # monitor_rss()</pre></li>
    </ul>
    </li>
    <li>
    <p><strong>利用现有监控服务或工具</strong>:
    虽然专门针对RSS内容变化的通用监控服务不多,但你可以组合使用:</p>
    <ul>
    <li>
    <strong>Uptime监控服务:</strong> 如UptimeRobot、Pingdom,它们可以监控你的RSS URL的HTTP状态码和响应时间,这是最基础的可用性监控。</li>
    <li>
    <strong>网页内容监控工具:</strong> 某些工具可以监控网页内容变化,如果你能把RSS源当成一个普通的XML网页来监控,也能捕捉到结构性变化。但它们通常不理解RSS的语义。</li>
    <li>
    <strong>Serverless Functions(如AWS Lambda, Google Cloud Functions):</strong> 将你的自定义脚本部署为Serverless函数,利用云平台的定时触发器(如CloudWatch Events)来调度执行。这样可以省去服务器维护的麻烦,按需付费,非常适合低频但重要的监控任务。</li>
    <li>
    <strong>容器化部署(Docker):</strong> 将你的脚本打包成Docker镜像,可以方便地在任何支持Docker的环境中部署和管理,便于扩展和隔离。</li>
    </ul>
    </li>
    </ol>
    <p>选择哪种方式,主要看你希望的控制粒度、投入的资源以及现有团队的技术栈。对于大多数个人或小型团队,一个精心编写的Python脚本配合<pre class="brush:php;toolbar:false;">cron</pre>就已经足够强大和灵活了。</p>
    <h3>如何有效设置告警阈值,避免“狼来了”的困扰?</h3>
    <p>设置告警阈值是RSS异常监控中最考验经验和耐心的一环。如果设置得太敏感,你会被无数“假阳性”告警淹没,最终导致对告警的麻木;如果设置得太宽松,真正的异常可能就被错过了。要避免“狼来了”的困扰,核心在于<strong>理解你的RSS源的“脾气”</strong>,并进行<strong>分级告警</strong>。</p>
    <ol>
    <li>
    <p><strong>建立“正常”行为基线,并允许一定波动:</strong>
    不要一开始就拍脑袋设定一个固定值。先监控一段时间,比如一两周,记录下每个RSS源的平均更新频率、每次更新的条目数量、甚至每天的总条目数。</p>
    <ul>
    <li>
    <strong>更新频率:</strong> 如果一个源通常每天更新1-3次,那么3天不更新是异常,但如果它通常是周更,那么3天不更新就正常。</li>
    <li>
    <strong>条目数量:</strong> 如果一个源每次更新只增加1-2条,突然增加了50条,那可能是异常。但如果它经常批量发布,那50条也可能正常。</li>
    <li>
    <strong>容忍度:</strong> 对于更新频率,可以设置一个“容忍倍数”。比如,如果平均更新间隔是12小时,那么超过<pre class="brush:php;toolbar:false;">12小时 * 3倍 = 36小时</pre>不更新才触发告警。</li>
    </ul>
    </li>
    <li>
    <p><strong>分级告警策略:</strong>
    不是所有异常都值得立即把你从睡梦中叫醒。</p>
    <ul>
    <li>
    <strong>P0级(紧急/Critical):</strong> RSS源完全不可访问(HTTP 4xx/5xx错误)、XML解析失败、关键字段(如最新文章链接)为空或严重格式错误。这类问题意味着RSS服务完全中断或严重损坏,需要立即处理。告警方式可以是短信、电话、高优先级邮件、Slack/钉钉@all。</li>
    <li>
    <strong>P1级(重要/Warning):</strong> 更新频率显著下降(如超过平均更新间隔的2-3倍)、条目数量异常增减(但未到P0级别)、某个次要字段出现问题。这类问题可能预示着潜在的服务降级或内容质量问题,需要关注但不必立即中断工作。告警方式可以是普通邮件、Slack频道消息。</li>
    <li>
    <strong>P2级(信息/Info):</strong> 细微的内容变化(如某个描述字段的微调)、某个非关键的XML标签变化。这类告警可能只需要记录日志,供定期审查,无需即时通知。</li>
    </ul>
    </li>
    <li>
    <p><strong>考虑重试机制和告警抑制:</strong></p>
    <ul>
    <li>
    <strong>重试:</strong> 对于临时的网络波动或服务器瞬时过载,立即告警可能会造成误报。可以在检测到异常后,等待几分钟,然后再次尝试抓取。如果连续几次都失败,才发出告警。</li>
    <li>
    <strong>告警抑制(Debouncing):</strong> 在短时间内,同一个RSS源可能连续触发多个相似的告警(比如,先是HTTP 500,然后解析失败)。系统应该能识别并合并这些告警,只发送一条包含所有信息的综合告警,避免告警风暴。</li>
    </ul>
    </li>
    <li><p><strong>定期回顾和调整阈值:</strong>
    RSS源的行为不是一成不变的,网站可能会改版、发布策略会调整。因此,你需要定期(比如每月或每季度)回顾告警历史,看看哪些告警是有效的,哪些是误报,然后根据实际情况调整阈值和告警规则。这是一个持续优化的过程,没有一劳永逸的方案。</p></li>
    </ol>
    <p>通过这些策略,你可以让你的RSS异常监控系统更加智能和实用,真正成为你的“眼睛”,而不是一个吵闹的“警报器”。</p>					</div>
    					<div class="artmoreart ">
    													<div class="artdp artptit"><span></span>
    								<p>相关文章</p>
    							</div>
    							<div class="artmores flexColumn">
    																	<a class="artmrlis flexRow" href="/faq/1977915.html" title="在微服务架构中XML转换服务的最佳实践"><b></b>
    										<p class="overflowclass">在微服务架构中XML转换服务的最佳实践</p>
    									</a>
    																	<a class="artmrlis flexRow" href="/faq/1976900.html" title="通过代码生成XML映射逻辑的优缺点"><b></b>
    										<p class="overflowclass">通过代码生成XML映射逻辑的优缺点</p>
    									</a>
    																	<a class="artmrlis flexRow" href="/faq/1976827.html" title="Java JAXB如何处理@XmlElementWrapper和@XmlElement"><b></b>
    										<p class="overflowclass">Java JAXB如何处理@XmlElementWrapper和@XmlElement</p>
    									</a>
    																	<a class="artmrlis flexRow" href="/faq/1973273.html" title="Vue项目里怎么解析并展示XML数据"><b></b>
    										<p class="overflowclass">Vue项目里怎么解析并展示XML数据</p>
    									</a>
    																	<a class="artmrlis flexRow" href="/faq/1972270.html" title="XML中的处理指令是什么 Processing Instruction用法"><b></b>
    										<p class="overflowclass">XML中的处理指令是什么 Processing Instruction用法</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/15714.html" target="_blank">php</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/15718.html" target="_blank">linux</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/15726.html" target="_blank">word</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/15730.html" target="_blank">python</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/15802.html" target="_blank">js</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/15824.html" target="_blank">node.js</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/15848.html" target="_blank">json</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/15853.html" target="_blank">node</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/zt/15863.html" target="_blank">go</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=Python" target="_blank">Python</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=架构" target="_blank">架构</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=simpleXML" target="_blank">simpleXML</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=Lambda" target="_blank">Lambda</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=JS" target="_blank">JS</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=windows" target="_blank">windows</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=docker" target="_blank">docker</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=macos" target="_blank">macos</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=sqlite" target="_blank">sqlite</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=mongodb" target="_blank">mongodb</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=postgresql" target="_blank">postgresql</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=serverless" target="_blank">serverless</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=http" target="_blank">http</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=https" target="_blank">https</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=linux" target="_blank">linux</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=cms" target="_blank">cms</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=WordPress" target="_blank">WordPress</a> <a class="mtbsa flexRow" onclick="hits_log(2,'www',this);" href-data="/search?q=axios" target="_blank">axios</a>								</div>
    							</div>
    						
    						<p class="statement">本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn</p>
    						<div class="lastanext flexRow">
    													<a class="lastart flexRow" href="/faq/1506874.html" title="RSS如何支持实时更新?"><span>上一篇:</span>RSS如何支持实时更新?</a>
    													<a class="nextart flexRow" href="/faq/1507575.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/2000957.html" title="停车位尺寸标准是多少 车位长宽"><b></b>
    												<p class="overflowclass">停车位尺寸标准是多少 车位长宽</p>
    											</a>
    											<div class="authtime flexRow"><b></b>
    												<p>2026-01-19 10:53</p>
    											</div>
    										</div>
    								</div>
    																	<div class="authlist flexColumn">
    										<div class="autharts flexRow">
    											<a class="autharta flexRow " href="/faq/2000964.html" title="1英寸等于多少厘米?常见长度单位换算速查表"><b></b>
    												<p class="overflowclass">1英寸等于多少厘米?常见长度单位换算速查表</p>
    											</a>
    											<div class="authtime flexRow"><b></b>
    												<p>2026-01-19 10:55</p>
    											</div>
    										</div>
    								</div>
    																	<div class="authlist flexColumn">
    										<div class="autharts flexRow">
    											<a class="autharta flexRow " href="/faq/2000971.html" title="1盎司等于多少克?黄金与液体盎司换算区别【科普】"><b></b>
    												<p class="overflowclass">1盎司等于多少克?黄金与液体盎司换算区别【科普】</p>
    											</a>
    											<div class="authtime flexRow"><b></b>
    												<p>2026-01-19 10:56</p>
    											</div>
    										</div>
    								</div>
    																	<div class="authlist flexColumn">
    										<div class="autharts flexRow">
    											<a class="autharta flexRow " href="/faq/2000976.html" title="c# await foreach 和 await Task.WhenAll(linq) 的区别"><b></b>
    												<p class="overflowclass">c# await foreach 和 await Task.WhenAll(linq) 的区别</p>
    											</a>
    											<div class="authtime flexRow"><b></b>
    												<p>2026-01-19 10:57</p>
    											</div>
    										</div>
    								</div>
    																	<div class="authlist flexColumn">
    										<div class="autharts flexRow">
    											<a class="autharta flexRow " href="/faq/2001005.html" title="电脑网络连接设置在哪里找 快速打开无线网络列表的方法"><b></b>
    												<p class="overflowclass">电脑网络连接设置在哪里找 快速打开无线网络列表的方法</p>
    											</a>
    											<div class="authtime flexRow"><b></b>
    												<p>2026-01-19 11:04</p>
    											</div>
    										</div>
    								</div>
    																	<div class="authlist flexColumn">
    										<div class="autharts flexRow">
    											<a class="autharta flexRow " href="/faq/2001010.html" title="REST API返回XML还是JSON更好"><b></b>
    												<p class="overflowclass">REST API返回XML还是JSON更好</p>
    											</a>
    											<div class="authtime flexRow"><b></b>
    												<p>2026-01-19 11:05</p>
    											</div>
    										</div>
    								</div>
    																	<div class="authlist flexColumn">
    										<div class="autharts flexRow">
    											<a class="autharta flexRow " href="/faq/2001054.html" title="vivo V30 Pro拍照太亮曝光过度 vivo V30 Pro测光调节技巧"><b></b>
    												<p class="overflowclass">vivo V30 Pro拍照太亮曝光过度 vivo V30 Pro测光调节技巧</p>
    											</a>
    											<div class="authtime flexRow"><b></b>
    												<p>2026-01-19 11:14</p>
    											</div>
    										</div>
    								</div>
    																	<div class="authlist flexColumn">
    										<div class="autharts flexRow">
    											<a class="autharta flexRow " href="/faq/2001113.html" title="Excel下拉菜单联动图表怎么做_交互式图表筛选设置"><b></b>
    												<p class="overflowclass">Excel下拉菜单联动图表怎么做_交互式图表筛选设置</p>
    											</a>
    											<div class="authtime flexRow"><b></b>
    												<p>2026-01-19 11:25</p>
    											</div>
    										</div>
    								</div>
    																	<div class="authlist flexColumn">
    										<div class="autharts flexRow">
    											<a class="autharta flexRow " href="/faq/2001169.html" title="应用宝如何下载历史版本APP 查找和安装旧版本应用技巧【教程】"><b></b>
    												<p class="overflowclass">应用宝如何下载历史版本APP 查找和安装旧版本应用技巧【教程】</p>
    											</a>
    											<div class="authtime flexRow"><b></b>
    												<p>2026-01-19 11:37</p>
    											</div>
    										</div>
    								</div>
    																	<div class="authlist flexColumn">
    										<div class="autharts flexRow">
    											<a class="autharta flexRow " href="/faq/2001179.html" title="辽宁省考成绩查询入口官网 2026辽宁省公务员考试成绩查询入口"><b></b>
    												<p class="overflowclass">辽宁省考成绩查询入口官网 2026辽宁省公务员考试成绩查询入口</p>
    											</a>
    											<div class="authtime flexRow"><b></b>
    												<p>2026-01-19 11:40</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/pythonkfgj" class="aClass flexRow hotzta" title="python开发工具"><img
    										src="https://img.php.cn/upload/subject/202306/15/2023061514475366600.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="python开发工具" class="hotztaimg"
    										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
    								<div class="hotztright flexColumn">
    									<a target="_blank" href="/faq/pythonkfgj" class="aClass flexRow hotztra overflowclass" title="python开发工具">python开发工具</a>
    									<p class="aClass flexRow hotztrp overflowclass">php中文网为大家提供各种python开发工具,好的开发工具,可帮助开发者攻克编程学习中的基础障碍,理解每一行源代码在程序执行时在计算机中的过程。php中文网还为大家带来python相关课程以及相关文章等内容,供大家免费下载使用。</p>
    									<div class="hotztrdown flexRow">
    										<div class="htztdsee flexRow"> <b></b>
    											<p class="">760</p>
    										</div>
    										<div class="htztdTime flexRow"> <b></b>
    											<p>2023.06.15</p>
    										</div>
    									</div>
    								</div>
    							</div>
    													<div class="hotztlls flexRow">
    								<a target="_blank" href="/faq/pythondb" class="aClass flexRow hotzta" title="python打包成可执行文件"><img
    										src="https://img.php.cn/upload/subject/202307/20/2023072010451926796.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="python打包成可执行文件" class="hotztaimg"
    										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
    								<div class="hotztright flexColumn">
    									<a target="_blank" href="/faq/pythondb" class="aClass flexRow hotztra overflowclass" title="python打包成可执行文件">python打包成可执行文件</a>
    									<p class="aClass flexRow hotztrp overflowclass">本专题为大家带来python打包成可执行文件相关的文章,大家可以免费的下载体验。</p>
    									<div class="hotztrdown flexRow">
    										<div class="htztdsee flexRow"> <b></b>
    											<p class="">639</p>
    										</div>
    										<div class="htztdTime flexRow"> <b></b>
    											<p>2023.07.20</p>
    										</div>
    									</div>
    								</div>
    							</div>
    													<div class="hotztlls flexRow">
    								<a target="_blank" href="/faq/pythonnzsm" class="aClass flexRow hotzta" title="python能做什么"><img
    										src="https://img.php.cn/upload/subject/202307/25/2023072509560014669.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="python能做什么" class="hotztaimg"
    										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
    								<div class="hotztright flexColumn">
    									<a target="_blank" href="/faq/pythonnzsm" class="aClass flexRow hotztra overflowclass" title="python能做什么">python能做什么</a>
    									<p class="aClass flexRow hotztrp overflowclass">python能做的有:可用于开发基于控制台的应用程序、多媒体部分开发、用于开发基于Web的应用程序、使用python处理数据、系统编程等等。本专题为大家提供python相关的各种文章、以及下载和课程。</p>
    									<div class="hotztrdown flexRow">
    										<div class="htztdsee flexRow"> <b></b>
    											<p class="">762</p>
    										</div>
    										<div class="htztdTime flexRow"> <b></b>
    											<p>2023.07.25</p>
    										</div>
    									</div>
    								</div>
    							</div>
    													<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="">619</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/pythonjc" class="aClass flexRow hotzta" title="python教程"><img
    										src="https://img.php.cn/upload/subject/202308/03/2023080311475995178.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="python教程" class="hotztaimg"
    										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
    								<div class="hotztright flexColumn">
    									<a target="_blank" href="/faq/pythonjc" class="aClass flexRow hotztra overflowclass" title="python教程">python教程</a>
    									<p class="aClass flexRow hotztrp overflowclass">Python已成为一门网红语言,即使是在非编程开发者当中,也掀起了一股学习的热潮。本专题为大家带来python教程的相关文章,大家可以免费体验学习。</p>
    									<div class="hotztrdown flexRow">
    										<div class="htztdsee flexRow"> <b></b>
    											<p class="">1285</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/pythonhjblbz" class="aClass flexRow hotzta" title="python环境变量的配置"><img
    										src="https://img.php.cn/upload/subject/202308/04/2023080409460042319.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="python环境变量的配置" class="hotztaimg"
    										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
    								<div class="hotztright flexColumn">
    									<a target="_blank" href="/faq/pythonhjblbz" class="aClass flexRow hotztra overflowclass" title="python环境变量的配置">python环境变量的配置</a>
    									<p class="aClass flexRow hotztrp overflowclass">Python是一种流行的编程语言,被广泛用于软件开发、数据分析和科学计算等领域。在安装Python之后,我们需要配置环境变量,以便在任何位置都能够访问Python的可执行文件。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。</p>
    									<div class="hotztrdown flexRow">
    										<div class="htztdsee flexRow"> <b></b>
    											<p class="">549</p>
    										</div>
    										<div class="htztdTime flexRow"> <b></b>
    											<p>2023.08.04</p>
    										</div>
    									</div>
    								</div>
    							</div>
    													<div class="hotztlls flexRow">
    								<a target="_blank" href="/faq/pythoneval" class="aClass flexRow hotzta" title="python eval"><img
    										src="https://img.php.cn/upload/subject/202308/04/2023080410233145730.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="python eval" class="hotztaimg"
    										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
    								<div class="hotztright flexColumn">
    									<a target="_blank" href="/faq/pythoneval" class="aClass flexRow hotztra overflowclass" title="python eval">python eval</a>
    									<p class="aClass flexRow hotztrp overflowclass">eval函数是Python中一个非常强大的函数,它可以将字符串作为Python代码进行执行,实现动态编程的效果。然而,由于其潜在的安全风险和性能问题,需要谨慎使用。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。</p>
    									<div class="hotztrdown flexRow">
    										<div class="htztdsee flexRow"> <b></b>
    											<p class="">579</p>
    										</div>
    										<div class="htztdTime flexRow"> <b></b>
    											<p>2023.08.04</p>
    										</div>
    									</div>
    								</div>
    							</div>
    													<div class="hotztlls flexRow">
    								<a target="_blank" href="/faq/scratchpyt" class="aClass flexRow hotzta" title="scratch和python区别"><img
    										src="https://img.php.cn/upload/subject/202308/07/2023080711201214629.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="scratch和python区别" class="hotztaimg"
    										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
    								<div class="hotztright flexColumn">
    									<a target="_blank" href="/faq/scratchpyt" class="aClass flexRow hotztra overflowclass" title="scratch和python区别">scratch和python区别</a>
    									<p class="aClass flexRow hotztrp overflowclass">scratch和python的区别:1、scratch是一种专为初学者设计的图形化编程语言,python是一种文本编程语言;2、scratch使用的是基于积木的编程语法,python采用更加传统的文本编程语法等等。本专题为大家提供scratch和python相关的文章、下载、课程内容,供大家免费下载体验。</p>
    									<div class="hotztrdown flexRow">
    										<div class="htztdsee flexRow"> <b></b>
    											<p class="">709</p>
    										</div>
    										<div class="htztdTime flexRow"> <b></b>
    											<p>2023.08.11</p>
    										</div>
    									</div>
    								</div>
    							</div>
    													<div class="hotztlls flexRow">
    								<a target="_blank" href="/faq/phpwsstxkf" class="aClass flexRow hotzta" title="PHP WebSocket 实时通信开发"><img
    										src="https://img.php.cn/upload/subject/202601/19/2026011910341490966.jpg?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="PHP WebSocket 实时通信开发" class="hotztaimg"
    										onerror="this.src='/static/lhimages/moren/morentu.png'"></a>
    								<div class="hotztright flexColumn">
    									<a target="_blank" href="/faq/phpwsstxkf" class="aClass flexRow hotztra overflowclass" title="PHP WebSocket 实时通信开发">PHP WebSocket 实时通信开发</a>
    									<p class="aClass flexRow hotztrp overflowclass">本专题系统讲解 PHP 在实时通信与长连接场景中的应用实践,涵盖 WebSocket 协议原理、服务端连接管理、消息推送机制、心跳检测、断线重连以及与前端的实时交互实现。通过聊天系统、实时通知等案例,帮助开发者掌握 使用 PHP 构建实时通信与推送服务的完整开发流程,适用于即时消息与高互动性应用场景。</p>
    									<div class="hotztrdown flexRow">
    										<div class="htztdsee flexRow"> <b></b>
    											<p class="">3</p>
    										</div>
    										<div class="htztdTime flexRow"> <b></b>
    											<p>2026.01.19</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/8523"><span>[表单按钮]</span><span>jQuery单选框复选框美化代码</span></a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" title="面向设计的AXUI前端框架表单" href="/xiazai/js/8522"><span>[表单按钮]</span><span>面向设计的AXUI前端框架表单</span></a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" title="jQuery拖动自定义创建表单代码" href="/xiazai/js/8521"><span>[表单按钮]</span><span>jQuery拖动自定义创建表单代码</span></a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" title="JS带提示登录表单验证代码" href="/xiazai/js/8520"><span>[表单按钮]</span><span>JS带提示登录表单验证代码</span></a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" title="jQuery鼠标悬停九宫格图片延伸效果" href="/xiazai/js/8519"><span>[图片特效]</span><span>jQuery鼠标悬停九宫格图片延伸效果</span></a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" title="jQuery表单美化实例代码" href="/xiazai/js/8518"><span>[表单按钮]</span><span>jQuery表单美化实例代码</span></a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" title="jQuery实现点击替换图片" href="/xiazai/js/8517"><span>[图片特效]</span><span>jQuery实现点击替换图片</span></a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" title="jQuery下拉单选多选城市选择代码" href="/xiazai/js/8516"><span>[表单按钮]</span><span>jQuery下拉单选多选城市选择代码</span></a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" title="jquery背景图片轮播特效" href="/xiazai/js/8515"><span>[图片特效]</span><span>jquery背景图片轮播特效</span></a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" title="可扩展css3圆形搜索框" href="/xiazai/js/8514"><span>[表单按钮]</span><span>可扩展css3圆形搜索框</span></a>
    									</div>
    								</li>
    													</ul>
    						<ul class="twof" style="display:none;">
    															<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>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" href="/xiazai/code/11345" title="CODEC2I 众筹系统"><span>[电商源码]</span><span>CODEC2I 众筹系统</span> </a>
    									</div>
    								</li>
    													</ul>
    						<ul class="threef" style="display:none;">
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" href="/xiazai/sucai/4213" title="包裹盒卡片样机展示ps素材下载"><span>[网站素材]</span><span>包裹盒卡片样机展示ps素材下载</span> </a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" href="/xiazai/sucai/4212" title="披萨特价折扣美食海报设计下载"><span>[网站素材]</span><span>披萨特价折扣美食海报设计下载</span> </a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" href="/xiazai/sucai/4211" title="复古海浪灯塔装饰画矢量素材"><span>[网站素材]</span><span>复古海浪灯塔装饰画矢量素材</span> </a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" href="/xiazai/sucai/4210" title="手绘烘焙面包坊菜单矢量模板"><span>[网站素材]</span><span>手绘烘焙面包坊菜单矢量模板</span> </a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" href="/xiazai/sucai/4209" title="超级快餐美食折扣海报PSD模板下载"><span>[网站素材]</span><span>超级快餐美食折扣海报PSD模板下载</span> </a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" href="/xiazai/sucai/4208" title="2026新春纳福金葫芦矢量素材"><span>[网站素材]</span><span>2026新春纳福金葫芦矢量素材</span> </a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" href="/xiazai/sucai/4207" title="手机特价宣传海报PSD素材下载"><span>[网站素材]</span><span>手机特价宣传海报PSD素材下载</span> </a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" href="/xiazai/sucai/4206" title="游戏手柄特价折扣方形海报PSD下载"><span>[网站素材]</span><span>游戏手柄特价折扣方形海报PSD下载</span> </a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" href="/xiazai/sucai/4205" title="新春喜庆灯笼梅花边框矢量素材"><span>[网站素材]</span><span>新春喜庆灯笼梅花边框矢量素材</span> </a>
    									</div>
    								</li>
    															<li>
    									<div class="wzrfourli flexRow">
    										<b></b>
    										<a target="_blank" href="/xiazai/sucai/4204" title="周末美食折扣海报PSD设计源文件下载"><span>[网站素材]</span><span>周末美食折扣海报PSD设计源文件下载</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/1617.html" title="ThinkPHP6.x API接口--十天技能课堂">
    									<img src="https://img.php.cn/upload/course/000/000/067/65603b73b5002648.png?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="ThinkPHP6.x API接口--十天技能课堂" class="ristyAimg"
    										onerror="this.src='/static/mobimages/moren/morentu.png'">
    								</a>
    								<div class="ristyaRight flexColumn">
    									<a target="_blank" href="/course/1617.html" title="ThinkPHP6.x API接口--十天技能课堂"
    										class="rirightp overflowclass">ThinkPHP6.x API接口--十天技能课堂</a>
    
    									<div class="risrdown flexRow">
    										<p>共14课时 | 1.1万人学习</p>
    									</div>
    								</div>
    							</div>
    													<div  class="ristyA flexRow " >
    								<a target="_blank" href="/course/1590.html" title="php初学者入门课程">
    									<img src="https://img.php.cn/upload/course/000/000/067/6527b55f04f5a294.png?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="php初学者入门课程" class="ristyAimg"
    										onerror="this.src='/static/mobimages/moren/morentu.png'">
    								</a>
    								<div class="ristyaRight flexColumn">
    									<a target="_blank" href="/course/1590.html" title="php初学者入门课程"
    										class="rirightp overflowclass">php初学者入门课程</a>
    
    									<div class="risrdown flexRow">
    										<p>共10课时 | 0.6万人学习</p>
    									</div>
    								</div>
    							</div>
    													<div  class="ristyA flexRow " >
    								<a target="_blank" href="/course/1577.html" title="Linux运维网站架构,知识点全面总结">
    									<img src="https://img.php.cn/upload/course/000/000/067/64ab970dc6e8e558.png?x-oss-process=image/resize,m_mfit,h_75,w_120,limit_0" alt="Linux运维网站架构,知识点全面总结" class="ristyAimg"
    										onerror="this.src='/static/mobimages/moren/morentu.png'">
    								</a>
    								<div class="ristyaRight flexColumn">
    									<a target="_blank" href="/course/1577.html" title="Linux运维网站架构,知识点全面总结"
    										class="rirightp overflowclass">Linux运维网站架构,知识点全面总结</a>
    
    									<div class="risrdown flexRow">
    										<p>共16课时 | 1.0万人学习</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课时 | 8.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.3万人学习</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课时 | 4.7万人学习</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课时 | 8.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数据映射入门教程" href="/faq/2001093.html">XML数据映射入门教程</a></div>
    													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="什么是XML的持久性,它在数据归档和长期保存中的优势是什么?" href="/faq/2001078.html">什么是XML的持久性,它在数据归档和长期保存中的优势是什么?</a></div>
    													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="如何映射XML文件中的注释或处理指令?" href="/faq/2001039.html">如何映射XML文件中的注释或处理指令?</a></div>
    													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="REST API返回XML还是JSON更好" href="/faq/2001010.html">REST API返回XML还是JSON更好</a></div>
    													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="怎么用XPath选取文本节点 text()的用法" href="/faq/2001003.html">怎么用XPath选取文本节点 text()的用法</a></div>
    													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="DOM解析是什么 如何用它来读取和修改XML文档" href="/faq/2000998.html">DOM解析是什么 如何用它来读取和修改XML文档</a></div>
    													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="Android上传XML文件到服务器 OkHttp如何实现文件上传" href="/faq/2000926.html">Android上传XML文件到服务器 OkHttp如何实现文件上传</a></div>
    													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="FreeMarker模板引擎怎么生成XML" href="/faq/2000925.html">FreeMarker模板引擎怎么生成XML</a></div>
    													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="XML文件怎么批量修改节点内容 Python批量处理XML" href="/faq/2000887.html">XML文件怎么批量修改节点内容 Python批量处理XML</a></div>
    													<div class="xgwzlid flexRow"><b></b><a target="_blank" title="XHTML和HTML5有什么区别 为什么要遵循XML的严格语法" href="/faq/2000839.html">XHTML和HTML5有什么区别 为什么要遵循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=1506878&time=1768799109">
    </script>
    <script src="/static/ueditor/third-party/SyntaxHighlighter/shCore.js?1768799109"></script>
    <script>
    	article_status = "1522180";
    </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>