Home  >  Article  >  Backend Development  >  How to intercept characters from 0 to Nth character in a string in php

How to intercept characters from 0 to Nth character in a string in php

青灯夜游
青灯夜游Original
2022-08-16 19:05:101900browse

3 methods: 1. Use substr(), set the second parameter to 0 and the third parameter to N. The syntax is "substr(string,0,N)". 2. Use mb_substr(), set the second parameter to 0, and set the third parameter to N. The syntax is "mb_substr (string, 0, N, character encoding)". 3. Use substr_replace(), set the second parameter to 0, and set the third parameter to N. The syntax is "substr_replace(string,'',N)".

How to intercept characters from 0 to Nth character in a string in php

The operating environment of this tutorial: windows7 system, PHP version 8.1, DELL G3 computer

php wants to intercept the string from 0 to N-digit characters can be realized by 3 functions:

  • Use substr() function

  • Use mb_substr() function

  • Use the substr_replace() function

Method 1: Use the substr() function to intercept the string

## The #substr() function can intercept characters of a certain length from a specified position in a string.

substr(string,start,length)

ParametersDescriptionRequired . Specifies a part of the string to be returned. Required. Specifies where in the string to begin. Optional. Specifies the length of the string to be returned. The default is until the end of the string.
string
start
    Positive number - starts at the specified position in the string
  • Negative number - starts at the specified position from the end of the string
  • 0 - at the first character in the string Start at
length
    Positive number - Returns from the position of the start parameter
  • Negative number - Returns from the end of the string
Just set the second parameter of the function to 0 and the third parameter to N.

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$str="Hello world";
echo "原字符串:".$str."<br>";
echo "截取从0到第1位的字符:".substr($str,0,1)."<br>";
echo "截取从0到第2位的字符:".substr($str,0,2)."<br>";
echo "截取从0到第3位的字符:".substr($str,0,3)."<br>";
echo "截取从0到第4位的字符:".substr($str,0,4)."<br>";
echo "截取从0到第5位的字符:".substr($str,0,5)."<br>";
?>

How to intercept characters from 0 to Nth character in a string in php

Note: The substr() function handles English as There is no problem, but in development we often deal with Chinese characters more. Although the substr() function can also handle Chinese characters, it is not perfect. So how to intercept Chinese characters? You can use the mb_substr() function.

Method 2: Use the mb_substr() function to intercept a string

The mb_substr() function can intercept a specified part of a string, which is different from the substr() function. What's more, the mb_substr() function is not only valid for English characters, but also for Chinese characters.

mb_substr(string,start,length,encoding)

ParametersDescriptionRequired . Extracts a substring from this string. Required. Specifies where in the string to begin. Optional. Specifies the length of the string to be returned. The default is until the end of the string. encodingOptional. Character Encoding. If omitted, the internal character encoding is used.
str
start
    Positive number - starts at the specified position in the string
  • Negative number - starts at the specified position from the end of the string
  • 0 - at the first character in the string Start at
length
    Positive number - Returns from the position of the start parameter
  • Negative number - Returns from the end of the string
You only need to set the second parameter of the function to 0 and the third parameter to N

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$str="欢迎来到PHP中文网";
echo "原字符串:".$str."<br>";
echo "截取从0到第2位的字符:".mb_substr($str,0,2,"utf-8")."<br>";
echo "截取从0到第3位的字符:".mb_substr($str,0,3,"utf-8")."<br>";
echo "截取从0到第4位的字符:".mb_substr($str,0,4,"utf-8")."<br>";
?>

How to intercept characters from 0 to Nth character in a string in php

Method 3: Use the substr_replace() function to delete the characters after N digits

The substr_replace() function replaces part of the string with another string and returns the replaced character String.

You only need to use the substr_replace() function to replace all characters after N digits with null characters, retain the characters from 0 to Nth digit, and return.

substr_replace(string,replacement,start,length)

ParametersDescriptionRequired . Specifies the string to check. Required. Specifies the string to be inserted. Required. Specifies where in the string to begin replacement. Optional. Specifies how many characters to replace. The default is the same as the string length.

只需将第二个参数设置为空字符,第三个参数设置为N,第四个参数省略即可。

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$str="Hello world";
echo "原字符串:".$str."<br>";
echo "截取从0到第2位的字符:".substr_replace($str,&#39;&#39;,2)."<br>";
echo "截取从0到第3位的字符:".substr_replace($str,&#39;&#39;,3)."<br>";
echo "截取从0到第4位的字符:".substr_replace($str,&#39;&#39;,4)."<br>";
?>

How to intercept characters from 0 to Nth character in a string in php

推荐学习:《PHP视频教程

string
replacement
start
    Positive number - starts at the specified position in the string
  • Negative number - starts at the specified position from the end of the string
  • 0 - at the first character in the string Start at
length
    Positive number - the length of the string to be replaced
  • Negative number - the number of characters to be replaced from the end of the string
  • 0 - insert instead of replace

The above is the detailed content of How to intercept characters from 0 to Nth character in a string in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn