
试例 $str="abcdef"; echo $str[2];
result:是 c
这是一个字符串 为什么能用数组的形式打印出来
1 Patrick95 2016-07-21 10:42:46 +08:00 php 官方使用手册: 存取和修改字符串中的字符 字符串中的字符可以通过一个以 0 为开始的,用类似数组结构中的方括号包含对应的数字来查找和修改,比如 $str[42], 可以把 字符串想像数组 。 函数 substr() 和 substr_replace()可以用来实现多于一个字符的情况。 Note: 字符串为了同样的目的也可以用花括号,比如 $str{42},但是, 在 PHP 5.3.0 中不推荐使用这种格式,应该用方括号,就像 $str[42]。 |
2 astome OP 楼上解释很详细,感觉 php 跟 js 有点像,字符串也相当一个数组对象,能下数组的形式去获取相关数据 |
3 metowolf 2016-07-21 10:58:47 +08:00 和 C/C++ 类似,字符串就是字符数组(虽然不严谨 |
4 iyaozhen 2016-07-21 11:00:51 +08:00 via Android 好像大部分语言都这样吧,方便各种字符串操作。 |
5 techmoe 2016-07-21 11:24:33 +08:00 via Android index 是从 0 开始的 说白了: abcdef 012345 |
6 chuhemiao 2016-07-21 11:47:47 +08:00 每个字符串都是一个无形中的数组 |
7 zsdroid 2016-07-21 14:55:56 +08:00 看上去很奇怪,但是至少很好用 |
8 zhouxuchen 2016-07-22 09:51:28 +08:00 忘记了被 C 语言支配的恐惧么(手动滑稽 |
9 kair 2016-07-22 14:51:02 +08:00 不知道楼主有木有接触过 C string 类型在 C 语言中的基础类型是不存在的 C 语言中有 char 类型 你可以简单理解为,一个字符串其实是多个 char 拼接起来的数组 最后, PHP 是 C 写的 |