strpos()について
strposは、該当する文字列が見つからなかった場合に、「false」を返す。
該当する文字列が見つかった位置を数値で返すため、型のチェックを必要とする。
=== false
!== false
例えば、strpos(‘abcd’,’bc’) は0を返します。
if(strpos($subject,'bc') !== false){
//'abcd'のなかに'bc'が含まれている場合
}
if(strpos($subject,'bc') === false){
//'abcd'のなかに'bc'が含まれていない場合
}
参考にさせて頂きました。
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUUzJTgwJTkwUEhQJUUzJTgwJTkxJUU3JTg5JUI5JUU1JUFFJTlBJUUzJTgxJUFFJUU2JTk2JTg3JUU1JUFEJTk3JUU1JTg4JTk3JUUzJTgyJTkyJUU1JTkwJUFCJUUzJTgyJTgwJUUzJTgxJThCJUUzJTgxJUFFJUUzJTgzJTgxJUUzJTgyJUE3JUUzJTgzJTgzJUUzJTgyJUFGJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz1jMmIxZWE0NTBkZTIyMTA2YWM3MTNjYzkzMDBlOTkwMA&mark-x=142&mark-y=57&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBrYXp1NTYmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWEzNWMxNWFmNWFmNmVjZjg4Y2FjMzBmZjcxM2UxMDg4&blend-x=142&blend-y=486&blend-mode=normal&s=1e6404d409d2a990570d315e8357ce41)
【PHP】特定の文字列を含むかのチェック - Qiita
#正規表現を使わない場合strpos,strstr,preg_matchではstrposが最も早いのでstrposを使う。PHPマニュアルにもそのように書いてある。strstrもし特定の h…
使用例 – wordpressでカスタムフィールドのキーの値より評価する場合など
<?php if(strpos(get_post_meta($post->ID,'aaa',true), '平安時代') !== false): ?>
<?php echo do_shortcode('[aaa_1]'); ?>
<?php elseif(strpos(get_post_meta($post->ID,'aaa',true), '江戸時代') !== false): ?>
<?php echo do_shortcode('[aaa_2]'); ?>
<?php endif; >
上記の説明、カスタムフィールドのキーがaaaで値に「平安時代」を含むものは、ショートコードのaaa_1を出力する。また、キーがaaaで値に「江戸時代」を含むものは、ショートコードのaaa_2を出力する。