PHP function strtok() that splits a string into smaller strings (tags)

黄舟
Release: 2023-03-17 07:00:02
Original
1689 people have browsed it

Example

Split by wordString:

In the example below, please note that we only call strtok## the first time #() function uses the string parameter. After the first call, the function only requires the split parameter because it knows where it is in the current string. If you need to split a new string, call strtok() with the string parameter again:

<?php
$string = "Hello world. Beautiful day today.";
$token = strtok($string, " ");

while ($token != false)
{
echo "$token<br>";
$token = strtok(" ");
} 
?>
Copy after login

Definition and usage

strtok() function splits the string into smaller strings (mark).

Syntax

strtok(string,split)
Copy after login

ParametersDescriptionstring Required. Specifies the string to be split. splitRequired. Specifies one or more delimiting characters.
Technical details

Return value: Returns the string token. PHP version: 4+##The advantages are:

1. Multiple delimiters can be defined at one time. When the function is executed, it cuts according to a single delimiter instead of the entire delimiter, while

explode

cuts according to the entire delimiter string. For this reason, explode can be cut in Chinese, but strtok cannot and will be garbled. 2. When using while or for with strtok() to traverse, you can change the separator at any time, or use break to terminate cutting at any time.

Example 1: Demonstrate using Chinese + explode to cut

$string = "这是PHP论坛 论坛版块 论坛栏目 论坛H管理员 论坛会员"; 
$arr = explode("论坛",$string); 
foreach($arr as $v) 
{ 
echo $v."<br />"; 
} 
echo "-------------<br />";
Copy after login

Return:

这是PHP 

版块 
栏目 
H管理员 
会员 
-------------
Copy after login

Example 2: Demonstrate changing the cutting character, please note that there is no longer "H" in WHILE " separator. Instead just use spaces.

$string = "这是PHP论坛 论坛版块 论坛栏目 论坛H管理员 论坛会员"; 
$tok = strtok($string, " H"); //空格+H 
$n=1; 
while ($tok !== false) { 
echo "$tok<br />"; 
$tok = strtok(" "); //空格 
//if($n>2)break; //可以随时跳出。 
//$n++; 
} 
echo "-------------<br />";
Copy after login

Return:

这是P 
P论坛 
论坛版块 
论坛栏目 
论坛H管理员 
论坛会员 
-------------
Copy after login

Example 3: Demonstrate multiple delimiters.

$string = "This is\tan example\nstring"; 
$tok = strtok($string, " \n\t"); #空格,换行,TAB 
while ($tok !== false) { 
echo "$tok<br />"; 
$tok = strtok(" \n\t"); 
} 
echo "-------------<br />";
Copy after login

Return:

This 
is 
an 
example 
string 
-------------
Copy after login
$string = "abcde 123c4 99sadbc99b5232"; 
$tok = strtok($string, "bc"); 
while ($tok !="") { 
echo "$tok<br />"; 
$tok = strtok("bc"); 
} 
echo "-------------<br />";
Copy after login

Return:

a 
de 123 
4 99sad 
99 
5232 
-------------
Copy after login

Example 4: Demonstrate using for to traverse:

$line = "leon\tatkinson\tleon@clearink.com"; 
for($token = strtok($line,"\t");$token!="";$token=strtok("\t")) 
{ 
print("token: $token<BR>\n"); 
}
Copy after login

Return:

token: leon 
token: atkinson 
token: leon@clearink.com
Copy after login

The above is the detailed content of PHP function strtok() that splits a string into smaller strings (tags). For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template