プログラムの関数には非常にたくさんの種類がありますが、今回はPHPで文字列を検索する方法についてご紹介したいと思います。

strstr関数とはどんなもの?

まず最初は「strstr関数」というものです。
この関数は「文字列に特定の文字が含まれているかどうかを判断してチェックしてくれる」ものとなります。
つまり、もっとわかりやすく言えば「文字列の一致」について判断してくれる関数だということです。
参考例

strstr(対象となるの文字列, 検索したい文字列)

具体的な使い方は下記の通りになります。

<?php ←PHPの世界を作るため必須
$mail = "prosuta@com";
$domain = strstr($mail, "@");
if($domain){
    echo "該当あり!<br>ヒットした文字列:$domain";
}else{
    echo "該当しませんでした!";
}
?>  ←PHPの世界を閉じる

【検索表示】※検索にマッチした場合

検索ヒットは下記のとおりになります
@com

少し難しく感じるかもしれませんが、ざっくりとまとめておくと「文字列」を検索し、それにヒットすれば文字の最後まで全て返してくれます。逆に、ヒットしなければfalseとなります。

strpos関数とは?

この関数は文字列が「最初」に現れる場所を探してくれる便利な機能を持っています。
参考例

strpos(対象となる文字列, 検索したい文字列)

具体的な使い方は下記のとおりになります。

<?php ←PHPの世界を作るため必須
$moji = 'abcdef';
$check   = 'a';
$string = strpos($moji, $check);
※ポイントは「===」 を使用していることです!単純に == を使ったのでは期待通りに動作しないので注意!理由は 'a' が 0 番目 (最初) の文字という点です。
if ($string === false) {
    echo "文字列 '$check' は、文字列 '$moji' の中でヒットしませんでした。";
} else {
    echo "文字列 '$check' が文字列 '$moji' の中でヒットしました。";
    echo " 見つかった場所は $string となります。";
}
?> ←PHPの世界を閉じる

こういったように文字列内を検索し、検索した文字が最初に表示される位置を返してくれます。

preg_match関数とは?

この関数はpreg_match() で検索した際に、マッチした回数を返してくれるというものです。
flaseなら「0回」を返し、1回でもマッチすれば「回数」を返してくれるというものになります。
参考例

preg_match( 正規表現 , 検索対象となる文字列 [,マッチする文字列の配列])

具体的な使い方は下記のとおりになります。

<?php
if ( preg_match('/[^@]+$/', 'pro@suta.com', $matche) ) {
  print $matche[0]; // suta.com
}
?>

検索対象となる文字列から「正規表現」に該当する文字列が「ある」かをチェックします。
返り値はマッチした文字列があった場合は「1」となり、マッチしない場合は「0」となります。

preg_matchの注意点

リファレンスでも紹介されていることですが、PHPで文字列の中から「特定の文字列」を検索する方法には色々な方法がありますが、「preg_match」は処理時間が他の「strstr」「strpos」に比べてパフォーマンス的に良くないので避けることが無難と言われています。
ただし、プログラム初心者のうちは色々な「関数」に触れ、その中で実際に記述して反応をチェックすることが一番理解を深める方法の一つです。
初めてプログラミングを行う上ではたくさんのことを考えてしまってわからなくなることもあると思いますが、まずは関数というものを理解し、実際に手を動かして確認することが大切だということも覚えて置きましょう。

PHPはサーバーと連携を行う大事なプログラミング

初心者の方でよくあるのは、「プログラミングはどの言語を行えばいいの?」という疑問をお持ちの方がたくさんいると思います。
実際には作りたいものによってプログラミング言語を選んだほうがいいというような意見やアドバイスもたくさんあると思いますが、そもそも「作りたいもの」さえ曖昧な人にはいまいちピンとくるようなことではないかもしれません。
そこで伝えておきたいのは、サーバーサイドの言語は(PHPなど)会員サイトやマッチングサイトなどを作る際は必要になってくる言語だということです。
逆にブラウザ(IE,クローム、ファイアーフォクス、サファリ)等でかっこいい演出、動きなどをしたい場合はJSを使って行うというようなイメージを持つと、プログラミングでやりたいことをなんとなくつかむことができると思います。
※もちろん違う言語でも厳密には可能ですが初心者の人にわかりやすく伝える上での説明です。
最初のうちはプルグラミングが「ふわふわ」しすぎていまいち理解が進まないと感じる方もいるかもしれませんが、プログラミングに関する情報を多く集め、手を動かし、そして人に話したり、聞いたりしていくことが上達への近道となります。