substr_count
計算子字符串出現次數
計算"Shanghai" 在字符串中出現的次數:
<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">"I love Shanghai. Shanghai is the biggest city in china."</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"Shanghai"</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">"This is nice"</span> <span class="token punctuation">;</span> <span class="token keyword">echo</span> <span class="token function">strlen</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" 出現的次數</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">// 字符串縮減為"is is nice"</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 is nice"</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 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">// 字符串縮減為"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>
如果start和length參數超過字符串長度,則該函數會輸出一個警告:
<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">"This is nice"</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 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 number">9</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span> <span class="token delimiter important">?></span></span>
因為長度值超過字符串的長度(3 + 9 大於12),使用會輸出一個警告。