0

非常に単純に、ファイルがあり、各行に次のようなものがあります

OneTwoThreeFourFiveSixSeven OneTwoThreeFourFiveSixSeven OneThreeFourSevenFiveSix
OneThreeFourSevenFiveSix OneTwoThreeFourFiveSixSeven OneThreeFourSevenFiveSix

これらの行の両方に「Five」という単語が含まれているかどうかを確認するにはどうすればよいですか?

私は試した:

strstr();
strrpos();
strpos();

他にもありますが、私が探している機能を提供するものは何もありません。php にメソッドが組み込まれていますか、それともこれを探す関数をビルドする必要がありますか?

わかりましたので、これはコードです:

foreach ($results as $result) {
    foreach ($lines as $line) {
        if(strpos($line, '$this->' . $result) || strpos($line, '($this->' . $result)){
            $i++;
        }
    }

    if($i == 0 && $result !== "__construct"){
        print_r($result);
    }
}
4

1 に答える 1

0

このコードを試してください:

strrpos — 文字列内で部分文字列が最後に出現する位置を見つける

針が見つからなかった場合は FALSE を返します。

<?php
    $str1 = "OneTwoThreeFourFiveSixSeven";
    $str2 = "OneThreeFourSevenFiveSix";
    if(strrpos($str1, "Two") !== FALSE){
        echo 'Two is in $str1';
    }else{
        echo 'Two is not in $str1';
    }

    if(strrpos($str2, "Two") !== FALSE){
        echo 'Two is in $str2';
    }else{
        echo 'Two is not in $str2';
    }
?>

コードパッドでテスト済み: http://codepad.org/8KbwMq36

于 2013-10-23T14:49:45.127 に答える