PHP就像類似於MySQL的東西一樣,對於if語句?php


Answers

我知道,這個問題不是實際的,但我已經解決了類似的問題:)

我的解決方案

/**
 * SQL Like operator in PHP.
 * Returns TRUE if match else FALSE.
 * @param string $pattern
 * @param string $subject
 * @return bool
 */
function like_match($pattern, $subject)
{
    $pattern = str_replace('%', '.*', preg_quote($pattern, '/'));
    return (bool) preg_match("/^{$pattern}$/i", $subject);
}

例子:

like_match('%uc%','Lucy'); //TRUE
like_match('%cy', 'Lucy'); //TRUE
like_match('lu%', 'Lucy'); //TRUE
like_match('%lu', 'Lucy'); //FALSE
like_match('cy%', 'Lucy'); //FALSE
Question

我想要一個if語句像mysql一樣使用相同的something LIKE '%something%'

我想在PHP中構建一個if語句。

if ($something is like %$somethingother%)

可能嗎?

我問這個問題的原因是我不想改變MySQL的命令,這是一個很長的頁面上有很多東西,我不想為此建立一個不同的功能。

讓我知道如果這是可能的,如果可能的話,那麼如何做到這一點。




使用函數,在另一個字符串搜索字符串,如: strstrstrpossubstr_count