在PHP 編程中,處理字符串和實現條件判斷是非常常見的任務。本文將介紹兩個實用工具: stripos函數和三元運算符(ternary operator),並展示它們如何結合使用來編寫簡潔而高效的代碼。
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和三元運算符結合使用,實現簡潔的字符串判斷邏輯。例如,判斷一個URL 是否包含關鍵詞login :
<?php
$url = "https://m66.net/user/login";
echo (stripos($url, 'login') !== false)
? "這是一個登錄頁面。"
: "這不是登錄頁面。";
?>
這是一個登錄頁面。
這裡我們使用stripos($url, 'login') !== false判斷$url是否包含login ,然後使用三元運算符根據判斷結果輸出不同的內容。
假設你想要判斷訪問者是否來自某個子域名,並根據不同情況輸出歡迎語: