PHP 字符串 strncasecmp()函数

PHP 字符串 strncasecmp()函数

strncasecmp()是PHP的一个内置函数,它是不区分大小写的。它用于比较两个字符串的前n个字符。此函数类似于strcasecmp()函数,但有一个区别。在strncasecmp()中,我们可以指定要比较的字符串的字符数,而strcasecmp()不包含长度参数。strncasecmp()是一个二进制安全的函数。

注意: strncasecmp()是一个不区分大小写和二进制安全的函数。

语法

strncasecmp()函数的语法如下:

strncasecmp( string1,string2, $length)

所有三个参数在此函数中都是必需的。它在比较后返回一个整数值。

参数

$string1 (必需): 这是用于比较的第一个字符串。它是一个必需的参数。

$string2 (必需): 这是用于比较的第二个必需字符串。

$length: 这是此函数的最后和必需参数,指定要用于比较的字符串的长度。

返回值

返回值 描述
返回 < 0 如果string1小于string2,即$string < $string2
返回 0 如果两个字符串相等。
返回 > 0 如果string1大于string2,即$string > $string2

示例

下面给出了一些示例,您可以从中学习在程序中对此函数的实际应用。

Input:
string1 = "Hello World",string2 = "HELLO ", len = 5;    //case-insensitive
Output: 0

Input:string1 = "Hello World ", string2 = "Hello ",len = 11;  
Output: 6

Input:
string1 = "Hello PHP! ",string2 = "PHP", len = 9
Output: -8

Input:string1 = "PHP! ", string2 = "Hello PHP",len = 9
Output: 8

Input:
string1 = "Hello ",string2 = "Hello PHP", $len = 9
Output: -4

以下是一些详细的示例 –

示例1

这是strncasecmp()的简单示例,它展示了它是不区分大小写的函数。

<?php 
string1 = "Welcome to javaTpoint";string2 = "WELCOME";     //case-insensitive
    len = 7;
    //Both strings are equal
    echo strncasecmp(string1, string2,len);
?>

输出结果:

0

示例2

<?php
string1 = "Welcome to javaTpoint";string2 = "Welcome";               
    len = 20;
    //string1 is greater than string2
    echo strncasecmp(string1, string2,len);
?>      

输出:

在这个示例中,函数返回了13,因为string1大于string2。

13

示例3

<?php 
string1 = "Welcome";string2 = "Welcome to javaTpoint";
    len = 20;
    //string1 is less than string2
    echo strncasecmp(string1, string2,len);
?>

输出:

在这个示例中,函数返回了-13,因为string1小于string2。

-13

示例4

<?php 
string1 = "Welcome to javaTpoint";string2 = "Hello";
    len = 20;
    //string1 is greater than string2 and also not same
    echo strncasecmp(string1, string2,len);
?>

输出:

15

示例 5

<?php 
string1 = "Hello World";string2 = "Hello earth";               
    len = 11;  //string1 is not same as string2.
    echo strncasecmp(string1, string2,len);
?>

输出:

在上面的示例中,这个函数返回了18,因为string2大于string1。e的ASCII值(101)大于W(87)。

18

示例6

<?php 
string1 = "Good afternoon";string2 = "Good afternoor";                
    len = 14;  
//string2 has a character (r) with higher ASCII value, so, output would be <0
    echo strncasecmp(string1, string2,len);
?>

输出:

在此示例中,函数返回-4,因为string1小于string2。在string2中,下午后面的n被替换为r。r的ASCII值(114)大于n(110),因此较小。

-4

示例7

如果我们在函数中不提供比较的长度,那么将会显示错误。

<?php 
string1 = "Good afternoon";string2 = "Good afternoor";                
    echo strncasecmp(string1,string2);
?>

输出:

我们可以看到输出结果中出现了一个警告,即函数预期需要三个参数,而程序中只传递了两个参数。

PHP 字符串 strncasecmp()函数

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程