PageRenderTime 68ms CodeModel.GetById 32ms RepoModel.GetById 1ms app.codeStats 0ms

/manual/ja/function.strpos.php

https://github.com/ssbalakumar/web-php
PHP | 201 lines | 166 code | 35 blank | 0 comment | 0 complexity | b9957fa15b08d672f2a057da1c7a60ac MD5 | raw file
  1. <?php
  2. include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
  3. $TOC = array();
  4. $PARENTS = array();
  5. include_once dirname(__FILE__) ."/toc/ref.strings.inc";
  6. $setup = array (
  7. 'home' =>
  8. array (
  9. 0 => 'index.php',
  10. 1 => 'PHP Manual',
  11. ),
  12. 'head' =>
  13. array (
  14. 0 => 'UTF-8',
  15. 1 => 'ja',
  16. ),
  17. 'this' =>
  18. array (
  19. 0 => 'function.strpos.php',
  20. 1 => 'strpos',
  21. ),
  22. 'up' =>
  23. array (
  24. 0 => 'ref.strings.php',
  25. 1 => 'String 関数',
  26. ),
  27. 'prev' =>
  28. array (
  29. 0 => 'function.strpbrk.php',
  30. 1 => 'strpbrk',
  31. ),
  32. 'next' =>
  33. array (
  34. 0 => 'function.strrchr.php',
  35. 1 => 'strrchr',
  36. ),
  37. 'alternatives' =>
  38. array (
  39. ),
  40. );
  41. $setup["toc"] = $TOC;
  42. $setup["parents"] = $PARENTS;
  43. manual_setup($setup);
  44. manual_header();
  45. ?>
  46. <div id="function.strpos" class="refentry">
  47. <div class="refnamediv">
  48. <h1 class="refname">strpos</h1>
  49. <p class="verinfo">(PHP 4, PHP 5)</p><p class="refpurpose"><span class="refname">strpos</span> &mdash; <span class="dc-title">文字列内の部分文字列が最初に現れる場所を見つける</span></p>
  50. </div>
  51. <div class="refsect1 description" id="refsect1-function.strpos-description">
  52. <h3 class="title">説明</h3>
  53. <div class="methodsynopsis dc-description">
  54. <span class="type"><a href="language.pseudo-types.php#language.types.mixed" class="type mixed">mixed</a></span> <span class="methodname"><strong>strpos</strong></span>
  55. ( <span class="methodparam"><span class="type">string</span> <code class="parameter">$haystack</code></span>
  56. , <span class="methodparam"><span class="type"><a href="language.pseudo-types.php#language.types.mixed" class="type mixed">mixed</a></span> <code class="parameter">$needle</code></span>
  57. [, <span class="methodparam"><span class="type">int</span> <code class="parameter">$offset</code><span class="initializer"> = 0</span></span>
  58. ] )</div>
  59. <p class="para rdfs-comment">
  60. 文字列 <em><code class="parameter">haystack</code></em> の中で
  61. <em><code class="parameter">needle</code></em> が最初に現れる位置を探します
  62. </p>
  63. </div>
  64. <div class="refsect1 parameters" id="refsect1-function.strpos-parameters">
  65. <h3 class="title">パラメータ</h3>
  66. <p class="para">
  67. <dl>
  68. <dt>
  69. <span class="term"><em><code class="parameter">haystack</code></em></span>
  70. <dd>
  71. <p class="para">
  72. 検索を行う文字列
  73. </p>
  74. </dd>
  75. </dt>
  76. <dt>
  77. <span class="term"><em><code class="parameter">needle</code></em></span>
  78. <dd>
  79. <p class="para">
  80. <em><code class="parameter">needle</code></em> が文字列でない場合は
  81. それを整数に変換しその番号に対応する文字として扱います
  82. </p>
  83. </dd>
  84. </dt>
  85. <dt>
  86. <span class="term"><em><code class="parameter">offset</code></em></span>
  87. <dd>
  88. <p class="para">
  89. 指定すると文字列内での検索開始位置がその位置になります
  90. <span class="function"><a href="function.strrpos.php" class="function">strrpos()</a></span>
  91. <span class="function"><a href="function.strripos.php" class="function">strripos()</a></span> と異なり負の数は指定できません
  92. </p>
  93. </dd>
  94. </dt>
  95. </dl>
  96. </p>
  97. </div>
  98. <div class="refsect1 returnvalues" id="refsect1-function.strpos-returnvalues">
  99. <h3 class="title">返り値</h3>
  100. <p class="para">
  101. needle が見つかった位置を
  102. <em><code class="parameter">haystack</code></em> 文字列の先頭 (offset の値とは無関係) からの相対位置で返します
  103. 文字列の開始位置は 0 であり1 ではないことに注意しましょう
  104. </p>
  105. <p class="para">
  106. needle が見つからない場合は <strong><code>FALSE</code></strong> を返します
  107. </p>
  108. <div class="warning"><strong class="warning">警告</strong><p class="simpara">この関数は論理値
  109. <strong><code>FALSE</code></strong> を返す可能性がありますが<strong><code>FALSE</code></strong> として評価される値を返す可能性もあります
  110. 詳細については <a href="language.types.boolean.php" class="link">論理値</a>
  111. セクションを参照してくださいこの関数の返り値を調べるには
  112. <a href="language.operators.comparison.php" class="link">===演算子</a>
  113. 使用してください</p></div>
  114. </div>
  115. <div class="refsect1 examples" id="refsect1-function.strpos-examples">
  116. <h3 class="title"></h3>
  117. <p class="para">
  118. <div class="example" id="example-4884">
  119. <p><strong>例1 <em>===</em> の使用</strong></p>
  120. <div class="example-contents">
  121. <div class="phpcode"><code><span style="color: #000000">
  122. <span style="color: #0000BB">&lt;?php<br />$mystring&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'abc'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$findme&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'a'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$pos&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">strpos</span><span style="color: #007700">(</span><span style="color: #0000BB">$mystring</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$findme</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">//&nbsp;===&nbsp;を使用していることに注目しましょう。単純に&nbsp;==&nbsp;を使ったのでは<br />//&nbsp;期待通りに動作しません。なぜなら&nbsp;'a'&nbsp;が&nbsp;0&nbsp;番目&nbsp;(最初)&nbsp;の文字だからです。<br /></span><span style="color: #007700">if&nbsp;(</span><span style="color: #0000BB">$pos&nbsp;</span><span style="color: #007700">===&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"文字列&nbsp;'</span><span style="color: #0000BB">$findme</span><span style="color: #DD0000">'&nbsp;は、文字列&nbsp;'</span><span style="color: #0000BB">$mystring</span><span style="color: #DD0000">'&nbsp;の中で見つかりませんでした"</span><span style="color: #007700">;<br />}&nbsp;else&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"文字列&nbsp;'</span><span style="color: #0000BB">$findme</span><span style="color: #DD0000">'&nbsp;が文字列&nbsp;'</span><span style="color: #0000BB">$mystring</span><span style="color: #DD0000">'&nbsp;の中で見つかりました"</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"&nbsp;見つかった位置は&nbsp;</span><span style="color: #0000BB">$pos</span><span style="color: #DD0000">&nbsp;です"</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">?&gt;</span>
  123. </span>
  124. </code></div>
  125. </div>
  126. </div>
  127. <div class="example" id="example-4885">
  128. <p><strong>例2 !== の使用</strong></p>
  129. <div class="example-contents">
  130. <div class="phpcode"><code><span style="color: #000000">
  131. <span style="color: #0000BB">&lt;?php<br />$mystring&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'abc'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$findme&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'a'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$pos&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">strpos</span><span style="color: #007700">(</span><span style="color: #0000BB">$mystring</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$findme</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">//&nbsp;!==&nbsp;演算子も使用可能です。ここで&nbsp;!=&nbsp;を使っても期待通りに動作しません。<br />//&nbsp;なぜなら&nbsp;'a'&nbsp;が&nbsp;0&nbsp;番目の文字だからです。(0&nbsp;!=&nbsp;false)&nbsp;を評価すると<br />//&nbsp;false&nbsp;になってしまいます。<br /></span><span style="color: #007700">if&nbsp;(</span><span style="color: #0000BB">$pos&nbsp;</span><span style="color: #007700">!==&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"文字列&nbsp;'</span><span style="color: #0000BB">$findme</span><span style="color: #DD0000">'&nbsp;が文字列&nbsp;'</span><span style="color: #0000BB">$mystring</span><span style="color: #DD0000">'&nbsp;の中で見つかりました"</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"&nbsp;見つかった位置は&nbsp;</span><span style="color: #0000BB">$pos</span><span style="color: #DD0000">&nbsp;です"</span><span style="color: #007700">;<br />}&nbsp;else&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"文字列&nbsp;'</span><span style="color: #0000BB">$findme</span><span style="color: #DD0000">'&nbsp;は、文字列&nbsp;'</span><span style="color: #0000BB">$mystring</span><span style="color: #DD0000">'&nbsp;の中で見つかりませんでした"</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">?&gt;</span>
  132. </span>
  133. </code></div>
  134. </div>
  135. </div>
  136. <div class="example" id="example-4886">
  137. <p><strong>例3 オフセットの使用</strong></p>
  138. <div class="example-contents">
  139. <div class="phpcode"><code><span style="color: #000000">
  140. <span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">//&nbsp;オフセット以前の内容を無視して文字を探すこともできます。<br /></span><span style="color: #0000BB">$newstring&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'abcdef&nbsp;abcdef'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$pos&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">strpos</span><span style="color: #007700">(</span><span style="color: #0000BB">$newstring</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'a'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">1</span><span style="color: #007700">);&nbsp;</span><span style="color: #FF8000">//&nbsp;$pos&nbsp;は&nbsp;0&nbsp;ではなく&nbsp;7&nbsp;となります。<br /></span><span style="color: #0000BB">?&gt;</span>
  141. </span>
  142. </code></div>
  143. </div>
  144. </div>
  145. </p>
  146. </div>
  147. <div class="refsect1 notes" id="refsect1-function.strpos-notes">
  148. <h3 class="title">注意</h3>
  149. <blockquote class="note"><p><strong class="note">注意</strong>: <span class="simpara">この関数はバイナリデータに対応しています
  150. </span></p></blockquote>
  151. </div>
  152. <div class="refsect1 seealso" id="refsect1-function.strpos-seealso">
  153. <h3 class="title">参考</h3>
  154. <p class="para">
  155. <ul class="simplelist">
  156. <li class="member"> <span class="function"><a href="function.stripos.php" class="function" rel="rdfs-seeAlso">stripos()</a> - 大文字小文字を区別せずに文字列が最初に現れる位置を探す</span></li>
  157. <li class="member"> <span class="function"><a href="function.strrpos.php" class="function" rel="rdfs-seeAlso">strrpos()</a> - 文字列中にある部分文字列が最後に現れる場所を探す</span></li>
  158. <li class="member"> <span class="function"><a href="function.strripos.php" class="function" rel="rdfs-seeAlso">strripos()</a> - 文字列中で特定の(大文字小文字を区別しない)文字列が最後に現れた位置を探す</span></li>
  159. <li class="member"> <span class="function"><a href="function.strstr.php" class="function" rel="rdfs-seeAlso">strstr()</a> - 文字列が最初に現れる位置を見つける</span></li>
  160. <li class="member"> <span class="function"><a href="function.strpbrk.php" class="function" rel="rdfs-seeAlso">strpbrk()</a> - 文字列の中から任意の文字を探す</span></li>
  161. <li class="member"> <span class="function"><a href="function.substr.php" class="function" rel="rdfs-seeAlso">substr()</a> - 文字列の一部分を返す</span></li>
  162. <li class="member"> <span class="function"><a href="function.preg-match.php" class="function" rel="rdfs-seeAlso">preg_match()</a> - 正規表現によるマッチングを行う</span></li>
  163. </ul>
  164. </p>
  165. </div>
  166. </div><?php manual_footer(); ?>