Home >Backend Development >PHP Tutorial >Experts teach you how to use PHP string interception function_PHP tutorial
When learning PHP, you may encounter the problem of PHP string interception. Here we will introduce the solution to the problem of PHP string interception function, and share it with you here. PHP itself is a simple yet powerful language. The PHP language has core features such as powerful string and array processing capabilities, and has greatly improved support for object-oriented programming (PHP5 and above).
ASP3.0 has long been abandoned by Microsoft and will no longer be updated. Some people may think: PHP should also be a thing that is going to die soon, right? However, the fact is exactly the opposite. PHP is not only developing at a high speed, leaving ASP far behind, but also gradually becoming the most widely used and popular language on the Internet. Let's use the powerful language of PHP to solve this problem.
PHP string interception function code:
<ol class="dp-xml"> <li class="alt"><span><span class="tag"><?</SPAN><SPAN class=tag-name>php</SPAN><SPAN> </SPAN></SPAN><LI class=""><SPAN> </SPAN><LI class=alt><SPAN>functionget_substr($string,$</SPAN><SPAN class=attribute>start</SPAN><SPAN>=</SPAN><SPAN class=attribute-value>'0'</SPAN><SPAN>,$</SPAN><SPAN class=attribute>length</SPAN><SPAN>=</SPAN><SPAN class=attribute-value>''</SPAN><SPAN>) </SPAN></SPAN><LI class=""><SPAN>{ </SPAN><LI class=alt><SPAN>$</SPAN><SPAN class=attribute>start</SPAN><SPAN>=(int)$start; </SPAN></SPAN><LI class=""><SPAN>$</SPAN><SPAN class=attribute>length</SPAN><SPAN>=(int)$length; </SPAN></SPAN><LI class=alt><SPAN>$</SPAN><SPAN class=attribute>i</SPAN><SPAN>=</SPAN><SPAN class=attribute-value>0</SPAN><SPAN>; </SPAN></SPAN><LI class=""><SPAN>if(!$string) </SPAN><LI class=alt><SPAN>{ </SPAN><LI class=""><SPAN>return; </SPAN><LI class=alt><SPAN>} </SPAN><LI class=""><SPAN>if($start</SPAN><SPAN class=tag>></span><span>=0) </span></span></li> <li class="alt"><span>{ </span></li> <li class=""> <span>while($i</span><span class="tag"><</SPAN><SPAN>$start) </SPAN></SPAN><LI class=alt><SPAN>{ </SPAN><LI class=""><SPAN>if(ord($string[$i])</SPAN><SPAN class=tag>></span><span>127) </span> </li> <li class="alt"><span>{ </span></li> <li class=""> <span>$</span><span class="attribute">i</span><span>=$i+2; </span> </li> <li class="alt"><span>} </span></li> <li class=""><span>else </span></li> <li class="alt"><span>{ </span></li> <li class=""><span>$i++; </span></li> <li class="alt"><span>} </span></li> <li class=""><span>} </span></li> <li class="alt"> <span>$</span><span class="attribute">start</span><span>=$i; </span> </li> <li class=""> <span>if($</span><span class="attribute">length</span><span>=='') </span> </li> <li class="alt"><span>{ </span></li> <li class=""><span>returnsubstr($string,$start); </span></li> <li class="alt"><span>} </span></li> <li class=""> <span>elseif($length</span><span class="tag">></span><span>0) </span> </li> <li class="alt"><span>{ </span></li> <li class=""> <span>$</span><span class="attribute">end</span><span>=$start+$length; </span> </li> <li class="alt"> <span>while($i</span><span class="tag"><</SPAN><SPAN>$end) </SPAN></SPAN><LI class=""><SPAN>{ </SPAN><LI class=alt><SPAN>if(ord($string[$i])</SPAN><SPAN class=tag>></span><span>127) </span> </li> <li class=""><span>{ </span></li> <li class="alt"> <span>$</span><span class="attribute">i</span><span>=$i+2; </span> </li> <li class=""><span>} </span></li> <li class="alt"><span>else </span></li> <li class=""><span>{ </span></li> <li class="alt"><span>$i++; </span></li> <li class=""><span>} </span></li> <li class="alt"><span>} </span></li> <li class=""><span>if($end!=$i-1) </span></li> <li class="alt"><span>{ </span></li> <li class=""> <span>$</span><span class="attribute">end</span><span>=$i; </span> </li> <li class="alt"><span>} </span></li> <li class=""><span>else </span></li> <li class="alt"><span>{ </span></li> <li class=""><span>$end--; </span></li> <li class="alt"><span>} </span></li> <li class=""> <span>$</span><span class="attribute">length</span><span>=$end-$start; </span> </li> <li class="alt"><span>returnsubstr($string,$start,$length); </span></li> <li class=""><span>} </span></li> <li class="alt"> <span>elseif($</span><span class="attribute">length</span><span>==0) </span> </li> <li class=""><span>{ </span></li> <li class="alt"><span>return; </span></li> <li class=""><span>} </span></li> <li class="alt"><span>else </span></li> <li class=""><span>{ </span></li> <li class="alt"> <span>$</span><span class="attribute">length</span><span>=</span><span class="attribute-value">strlen</span><span>($string)-abs($length)-$start; </span> </li> <li class=""><span>returnget_substr($string,$start,$length); </span></li> <li class="alt"><span>} </span></li> <li class=""><span>} </span></li> <li class="alt"><span>else </span></li> <li class=""><span>{ </span></li> <li class="alt"> <span>$</span><span class="attribute">start</span><span>=</span><span class="attribute-value">strlen</span><span>($string)-abs($start); </span> </li> <li class=""><span>returnget_substr($string,$start,$length); </span></li> <li class="alt"><span>} </span></li> <li class=""><span>} </span></li> <li class="alt"><span> </span></li> <li class=""> <span></span><span class="tag">?></span><span> </span> </li> </ol>