You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP&HTML实现不区分大小写判断字符与字母条件是否匹配

实现字母大小写不敏感的字符匹配功能

需求说明

实现不区分字母大小写的匹配判定逻辑:只要用户输入的字母与设定的条件字母一致就判定为真,即A=a、B=b,匹配成功后输出对应预设内容。

匹配示例

  • 输入D或d匹配目标d判定为真,输出:3 - DEF
  • 输入A或c匹配目标a或c判定为真,输出:2 - ABC

优化实现方案

你当前代码中逐个判断字母大小写的写法虽然可以正常运行,但逻辑冗余,更简洁的实现方案是先将用户输入的字符统一转为全大写(或全小写),再和统一格式的条件字符做匹配,无需分别判断两种大小写格式,优化后的完整代码如下:

<!DOCTYPE html>
<html lang = "zh-CN">
<head>
  <title>字母匹配测试</title>
    <!-- 必要meta标签 -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- BOOTSTRAP 5 -->
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
    <!-- jQuery -->
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js">
    </script>
    <!-- Sweet Alert 2 -->
    <script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js">
    </script>
</head>
<body>
   <!-- 输入输出区域 -->
            <!-- 输入区域 -->
            <div class="card">
                <div class="card-header"> 输入字母: </div>
                <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
                    <div class="card-body">
                        <div class="row">
                            <div class="col-12">
                                <input type="text" name="telephoneCharacter" placeholder="请输入字母" class="form-label input-responsive" maxlength = "1">
                            </div>
                            <div class="col-12">
                                <div class="col-auto d-flex justify-content-sm-end">
                                    <input type="submit" class="btn btn-dark" value="提交">
                                </div>
                            </div>
                        </div>
                    </div>
                </form>
            </div>
            <!-- 输出区域 -->
            <div class="card-img-bottom d-flex justify-content-center">
                <div class="text-uppercase">
                    <p class="Display-1"> 输出结果: </p>
                    <div class="container-fluid">
                        <?php
                        if ($_SERVER['REQUEST_METHOD'] == 'POST') {
                            // 去除输入首尾空白后统一转为大写
                            $character = strtoupper(trim($_POST['telephoneCharacter']));
                            if (in_array($character, ['A','B','C'])) {
                                print "<p class='text-muted h4'> 2 - ABC</p>";
                            } else if (in_array($character, ['D','E','F'])) {
                                print "<p class='text-muted h4'> 3 - DEF</p>";
                            }  else if (in_array($character, ['G','H','I'])) {
                                print "<p class='text-muted h4'> 4 - GHI</p>";
                            } else if (in_array($character, ['J','K','L'])) {
                                print "<p class='text-muted h4'> 5 - JKL</p>";
                            } else if (in_array($character, ['M','N','O'])) {
                                print "<p class='text-muted h4'> 6 - MNO</p>";
                            }                                         
                        }
                        ?>
                    </div>
                </div>
            </div>
            <!-- BOOTSTRAP 5 脚本 -->
                <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
</body>
</html>

内容的提问来源于stack exchange,提问作者Michael

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 14:54:03