當前位置: 首頁> 最新文章列表> 利用stripos 與三元運算符構造簡洁判斷

利用stripos 與三元運算符構造簡洁判斷

M66 2025-06-02

在PHP 編程中,處理字符串和實現條件判斷是非常常見的任務。本文將介紹兩個實用工具: stripos函數和三元運算符(ternary operator),並展示它們如何結合使用來編寫簡潔而高效的代碼。

什麼是stripos?

stripos是PHP 中用於查找字符串中某段子串首次出現位置的函數。與strpos不同, stripos不區分大小寫的。

文法:

 stripos(string $haystack, mixed $needle, int $offset = 0): int|false
  • $haystack :要搜索的主字符串。

  • $needle :要查找的子字符串。

  • $offset :可選參數,規定從哪個位置開始搜索。

如果找到子字符串, stripos會返回其第一次出現的位置(從0 開始),如果找不到則返回false

什麼是三元運算符?

三元運算符是if...else的簡潔寫法,形式如下:

 條件 ? 表達式1 : 表達式2;

當條件為true時,返回表達式1;否則返回表達式2。

stripos + 三元運算符:實用示例

我們可以將stripos和三元運算符結合使用,實現簡潔的字符串判斷邏輯。例如,判斷一個URL 是否包含關鍵詞login

 <?php
$url = "https://m66.net/user/login";

echo (stripos($url, 'login') !== false) 
    ? "這是一個登錄頁面。" 
    : "這不是登錄頁面。";
?>

輸出結果:

 這是一個登錄頁面。

這裡我們使用stripos($url, 'login') !== false判斷$url是否包含login ,然後使用三元運算符根據判斷結果輸出不同的內容。

更進一步的應用

假設你想要判斷訪問者是否來自某個子域名,並根據不同情況輸出歡迎語: