<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 文章開頭部分(與正文無關)</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"這是一篇關於 PHP 中 ctype_lower 函數應用的文章。"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
</span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 文章正文部分</span></span><span>
<span class="hljs-comment">/*
* 如何通過 ctype_lower 函數判斷用戶名是否只包含小寫字母?
*
* 在 PHP 中,驗證字符串是否只包含小寫字母是一項常見需求,尤其是在用戶名等場景下。
* PHP 內置了一個非常實用的函數 ctype_lower,可以用來快速判斷字符串是否全部由小寫字母組成。
*
* 下面我們詳細介紹 ctype_lower 函數的用法,以及如何用它判斷用戶名是否只包含小寫字母。
*/</span>
<span class="hljs-comment">/**
* ctype_lower 函數介紹:
* ctype_lower(string $text): bool
*
* - 返回 true 當且僅當 $text 中所有字符都是小寫字母(a-z)。
* - 如果字符串為空,返回 false。
* - 其他非字母字符(如數字、符號)會導致函數返回 false。
*
* 例子:
* ctype_lower("hello") 返回 true
* ctype_lower("Hello") 返回 false (含大寫字母)
* ctype_lower("hello123") 返回 false (含數字)
*/</span>
</span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">isUsernameValid</span></span><span>(</span><span><span class="hljs-params"><span class="hljs-keyword">string</span></span></span><span> </span><span><span class="hljs-variable">$username</span></span><span>): </span><span><span class="hljs-title">bool</span></span><span> {
</span><span><span class="hljs-comment">// 判斷字符串是否全部是小寫字母</span></span><span>
</span><span><span class="hljs-comment">// 這裡使用 ctype_lower 函數,並確保用戶名不為空</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-keyword">empty</span></span><span>(</span><span><span class="hljs-variable">$username</span></span><span>)) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-literal">false</span></span><span>;
}
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-title function_ invoke__">ctype_lower</span></span><span>(</span><span><span class="hljs-variable">$username</span></span><span>);
}
</span><span><span class="hljs-comment">// 測試示例</span></span><span>
</span><span><span class="hljs-variable">$usernames</span></span><span> = [
</span><span><span class="hljs-string">"alice"</span></span><span>, </span><span><span class="hljs-comment">// 合法,全部小寫字母</span></span><span>
</span><span><span class="hljs-string">"Alice"</span></span><span>, </span><span><span class="hljs-comment">// 不合法,含大寫字母</span></span><span>
</span><span><span class="hljs-string">"bob123"</span></span><span>, </span><span><span class="hljs-comment">// 不合法,含數字</span></span><span>
</span><span><span class="hljs-string">"charlie_"</span></span><span>, </span><span><span class="hljs-comment">// 不合法,含下劃線</span></span><span>
</span><span><span class="hljs-string">""</span></span><span>, </span><span><span class="hljs-comment">// 不合法,空字符串</span></span><span>
];
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$usernames</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$name</span></span><span>) {
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">isUsernameValid</span></span><span>(</span><span><span class="hljs-variable">$name</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"使用者名稱 '<span class="hljs-subst">{$name}</span></span></span><span>' 合法,只包含小寫字母。<br>";
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"使用者名稱 '<span class="hljs-subst">{$name}</span></span></span><span>' 不合法,包含非小寫字母字符。<br>";
}
}
<span class="hljs-comment">/*
* 總結:
* ctype_lower 是一個簡潔且高效的方法,用於判斷字符串是否僅包含小寫字母。
* 在验证使用者名稱时,配合其他規則(如長度限制、字符集限制)使用,可以保证使用者名稱格式的合理性和安全性。
*/</span>
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>