substr_count
サブストリングの発生数を計算します
「上海」が文字列に表示される回数を計算します。
<span class="token php language-php"><span class="token delimiter important"><?php</span> <span class="token keyword">echo</span> <span class="token function">substr_count</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">「私は上海が大好きです。上海は中国最大の都市です。」</span> <span class="token punctuation">、</span> <span class="token string double-quoted-string">「上海」</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span> <span class="token delimiter important">?></span></span>
すべてのパラメーターを使用します:
<span class="token php language-php"><span class="token delimiter important"><?php</span> <span class="token variable">$ str</span> <span class="token operator">=</span> <span class="token string double-quoted-string">"これはいいです"</span> <span class="token punctuation">;</span> <span class="token keyword">エコー</span><span class="token function">ストレン</span><span class="token punctuation">(</span> <span class="token variable">$ str</span> <span class="token punctuation">)</span> <span class="token operator">。</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// strlen()を使用して文字列の長さを返します</span> <span class="token keyword">echo</span> <span class="token function">substr_count</span> <span class="token punctuation">(</span> <span class="token variable">$ str</span> <span class="token punctuation">、</span> <span class="token string double-quoted-string">"is"</span> <span class="token punctuation">)</span> <span class="token operator">。</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">// "is" is "は文字列に表示されます</span> <span class="token keyword">echo</span> <span class="token function">substr_count</span> <span class="token punctuation">(</span> <span class="token variable">$ str</span> <span class="token punctuation">、</span> <span class="token string double-quoted-string">"is"</span> <span class="token punctuation">、</span> <span class="token number">2</span> <span class="token punctuation">)</span> <span class="token operator">。</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">//文字列は「いいですか」に縮小されます</span> <span class="token keyword">echo</span> <span class="token function">substr_count</span> <span class="token punctuation">(</span> <span class="token variable">$ str</span> <span class="token punctuation">、</span> <span class="token string double-quoted-string">"is"</span> <span class="token punctuation">、</span> <span class="token number">3</span> <span class="token punctuation">)</span> <span class="token operator">。</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">//文字列は「Sはいい」に縮小されます</span> <span class="token keyword">echo</span> <span class="token function">substr_count</span> <span class="token punctuation">(</span> <span class="token variable">$ str</span> <span class="token punctuation">、</span> <span class="token punctuation">"</span> <span class="token string double-quoted-string">is</span> <span class="token operator">"</span> <span class="token punctuation">、</span> <span class="token number">3、3</span> <span class="token number">)</span> <span class="token punctuation">。</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span> <span class="token comment">//文字列は「si」に縮小されます</span> <span class="token delimiter important">?></span></span>
重なり合ったサブストリング:
<span class="token php language-php"><span class="token delimiter important"><?php</span> <span class="token variable">$ str</span> <span class="token operator">=</span> <span class="token string double-quoted-string">"abcabcab"</span> <span class="token punctuation">;</span> <span class="token keyword">echo</span> <span class="token function">substr_count</span> <span class="token punctuation">(</span> <span class="token variable">$ str</span> <span class="token punctuation">、</span> <span class="token string double-quoted-string">"abcab"</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span> <span class="token comment">//この関数は、重複するサブストリングをカウントしません</span> <span class="token delimiter important">?></span></span>
開始パラメーターと長さパラメーターが文字列の長さを超えた場合、関数は警告を出力します。
<span class="token php language-php"><span class="token delimiter important"><?php</span> <span class="token keyword">echo</span> <span class="token variable">$ str</span> <span class="token operator">=</span> <span class="token string double-quoted-string">"これはいいです"</span> <span class="token punctuation">;</span> <span class="token function">substr_count</span> <span class="token punctuation">(</span> <span class="token variable">$ str</span> <span class="token punctuation">、</span> <span class="token punctuation">"</span> <span class="token string double-quoted-string">is</span> <span class="token punctuation">"</span> <span class="token punctuation">、</span> <span class="token number">3、9</span> <span class="token number">)</span> <span class="token punctuation">;</span> <span class="token delimiter important">?></span></span>
長さの値は文字列の長さ(3 + 9は12を超える)を超えるため、それを使用して警告が出力されます。