菜鸟教程 -- 学的不仅是技术,更是梦想!

PHP 教程
(追記) (追記ここまで)

PHP 字符串变量


字符串变量用于存储并处理文本。


PHP 中的字符串变量

字符串变量用于包含有字符的值。

在创建字符串之后,我们就可以对它进行操作了。您可以直接在函数中使用字符串,或者把它存储在变量中。

在下面的实例中,我们创建一个名为 txt 的字符串变量,并赋值为 "Hello world!" 。然后我们输出 txt 变量的值:

实例

<?php
$txt
="Hello world!";
echo
$txt;
?>

运行实例 »

lamp 注释:当您赋一个文本值给变量时,请记得给文本值加上单引号或者双引号。

现在,让我们来看看一些常用的操作字符串的函数和运算符。


PHP 并置运算符

在 PHP 中,只有一个字符串运算符。

并置运算符 . 用于把两个字符串值连接起来。

下面的实例演示了如何将两个字符串变量连接在一起:

实例

<?php
$txt1
="Hello world!";
$txt2="What a nice day!";
echo
$txt1 . " " . $txt2;
?>

上面的代码将输出:Hello world! What a nice day!

提示:在上面的代码中,我们已经使用了两次并置运算符。这是由于我们需要在两个字符串之间插入一个空格。


PHP strlen() 函数

有时知道字符串值的长度是很有用的。

strlen() 函数返回字符串的长度(字节数)。

下面的实例返回字符串 "Hello world!" 的长度:

实例

<?php
echo strlen("Hello world!");
?>

运行实例 »

上面的代码将输出:12

提示:strlen() 常常用在循环和其他函数中,因为那时确定字符串何时结束是很重要的。(例如,在循环中,我们需要在字符串中的最后一个字符之后结束循环。)


PHP strpos() 函数

strpos() 函数用于在字符串内查找一个字符或一段指定的文本。

如果在字符串中找到匹配,该函数会返回第一个匹配的字符位置。如果未找到匹配,则返回 FALSE。

下面的实例在字符串 "Hello world!" 中查找文本 "world":

实例

<?php
echo strpos("Hello world!","world");
?>

运行实例 »

上面的代码将输出:6

提示:在上面的实例中,字符串 "world" 的位置是 6。之所以是 6 而不是 7 的原因是,字符串中第一个字符的位置是 0,而不是 1。


完整的 PHP String 参考手册

如需查看所有字符串函数的完整参考手册,请访问我们的 PHP String 参考手册

该参考手册提供了每个函数的简要描述和应用实例!

AI 思考中...

4 篇笔记 写笔记

  1. #0

    路人葵

    184***[email protected]

    97
    <?php
    echo strlen("中文字符"); // 输出 12
    ?>

    输出结果为 12,因为一个中文占 3 个字符数。

    可以使用 mb_strlen 设置指定编码输出中文字符个数:

    <?php
    echo mb_strlen("中文字符",'utf-8'); // 输出 4
    ?>

    路人葵

    184***[email protected]

    9年前 (2017年09月12日)
  2. #0

    忽胖忽瘦

    wgf***[email protected]

    31

    strpos() 返回的不是第一匹配的字符会的下标,是按照字符数量来算。例如:

    <?php
    $str = "你好!!a";
    echo strpos($str ,"!");
    ?>

    输出的是 6。同时,中文下的字符在 UTF-8 下是 3 个字符长度,在 gbk 下是2个字符长度。

    这个 strpos() 只能用于判断字符在字符串中是否存在。

    忽胖忽瘦

    wgf***[email protected]

    8年前 (2018年03月21日)
  3. #0

    冢.

    241***[email protected]

    46

    对于中文,可以使用 mb_strpos 来查询中文字符的位置。

    注意:中英文的感叹号、双引号等不同,如: !!

    注意:mb_strpos 按字处理,strpos 按字符处理。

    <?php
    echo strpos('开始23测试ceshi', '测试') . PHP_EOL;
    echo mb_strpos('开始23测试ceshi', '测试') . PHP_EOL;
    echo strpos('123测试ceshi', '测试') . PHP_EOL;
    echo mb_strpos('123测试ceshi', '测试') . PHP_EOL;
    ?>

    输出结果为:

    8
    4
    3
    3

    冢.

    241***[email protected]

    8年前 (2018年08月04日)
  4. #0

    chaingun

    cha***[email protected]

    27

    strlen() 函数返回字符串的长度(字符数)。 ==> strlen()返回应该是"字节数",不是"字符数"。

    可以试一下当参数为多字节(比如中文)字符的情况,比如:

    echo "strlen(我们是中国人) is ", strlen("我们是中国人"), "\n";

    chaingun

    cha***[email protected]

    7年前 (2019年11月03日)

点我分享笔记

  • 昵称 (必填)
  • 邮箱 (必填)
  • 引用地址

AltStyle によって変換されたページ (->オリジナル) /