博客列表 >PHP字符串的四种创建方式与常用函数

PHP字符串的四种创建方式与常用函数

evan
evan原创
2020年07月15日 17:14:24717浏览

单引号

. 在单引号中,任何特殊字符都会按原样输出

  1. <?php
  2. $var = 'this is a string!';
  3. echo 'evan $var php.cn';

双引号

  1. <?php
  2. $var = "this is a string!";
  3. echo "$string var evan 888、\'、\";

. 以上两者主要区别:

1、 双引号会替换变量的值,而单引号会把它当做字符串输出。

2、对于转义的支持

3、由于双引号中的字符串需要检测是否含有$符号修饰的变量,因此从理论上讲,单引号是比较快的。

heredoc

. 效果与使用双引号一致

  1. <?php
  2. $var = 'this is string';
  3. echo <<<"HERE"
  4. <h2>$var 888 evan</h2>
  5. HERE

nowdoc

. 效果相当于使用单引号来定义的字符串

  1. <?php
  2. $var = 'this is string';
  3. echo<<<'NOW'
  4. <div id="now-id"class="now">$var</div>
  5. NOW;

字符串常用函数

1. printf()输出格式化的字符串
  1. $str='php.cn';
  2. $str1='欢迎来到';
  3. $str2='学习';
  4. printf($str1.$str .$str2);
  5. // 输出“欢迎来到php.cn学习”
2.vprintf()后面变量使用数组
  1. <?php
  2. $table='users'; //表名
  3. $limit=10; //返回条目
  4. vprintf('SELECT * FROM `%s` LIMIT %d', [$table, $limit]);
  5. //输出:SELECT * FROM `users` LIMIT 10
3.sprintf() 不输出,返回格式化后的字符串
  1. <?php
  2. $table = 'users'; //表名
  3. $limit = 10; //返回条目
  4. $sql = sprintf('SELECT * FROM `%s` LIMIT %d', $table, $limit);
  5. //输出:SELECT * FROM `users` LIMIT 10
4.vsprintf()后面变量使用数组
  1. <?php
  2. $table='users'; //表名
  3. $limit=10; //返回条目
  4. $sql = sprintf('SELECT * FROM `%s` LIMIT %d', [$table, $limit]);
  5. //输出:SELECT * FROM `users` LIMIT 10
5.file_put_contents()把一个字符串写入文件中。
  1. <?php
  2. echo file_put_contents("sites.txt","我"); //默认覆盖写入,返回字符长度
  3. // 使用 FILE_APPEND 标记,可以在文件末尾追加内容
  4. // LOCK_EX 标记可以防止多人同时写入
  5. echo file_put_contents("sites.txt","要学习", FILE_APPEND | LOCK_EX);
6.implode() join() 把数组元素组合为一个字符串
  1. <?php
  2. $arr=['学生1','学生2','学生3','学生4','学生5','学生6'];
  3. //将数组合为字符串,每个用“|”号分开
  4. echo implode('|', $arr);
  5. echo '
  6. ';
  7. echo join('|', $arr);
  8. // 输出:
  9. //学生1|学生2|学生3|学生4|学生5|学生6
  10. //学生1|学生2|学生3|学生4|学生5|学生6
  11. //两个函数输出结果相同
7.explode()字符串打散为数组
  1. <?php
  2. print_r(explode('|','学生1|学生2|学生3|学生4|学生5|学生6'));
  3. // 返回数组:Array ( [0] => 学生1 [1] => 学生2 [2] => 学生3 [3] => 学生4 [4] => 学生5 [5] => 学生6 )
8.substr()返回字符串的一部分
  1. <?php
  2. echo substr('ABCDEFG', 0), '
  3. '; //输出全部
  4. echo substr('ABCDEFG', 1), '
  5. '; //输出BCDEFG
  6. echo substr('ABCDEFG', 3), '
  7. '; //输出DEFG
  8. echo substr('ABCDEFG', 3,2), '
  9. '; //输出DE(第3位开始取两位)
  10. //注意:UTF8 中文1个字为3个字节
9.str_split()把字符串分割到数组中
  1. <?php
  2. print_r(str_split('ABCDEF'));
  3. // 输出:Array ( [0] => A [1] => B [2] => C [3] => D [4] => E [5] => F )
  4. print_r(str_split('ABCDEF', 2));
  5. // 输出:Array ( [0] => AB [1] => CD [2] => EF )
10.file_get_contents()函数把整个文件读入一个字符串中。
  1. <?php
  2. echo file_get_contents("text.txt");
11.str_pad()把字符串填充为新的长度。
  1. <?php
  2. $str = "Hello World";
  3. echo str_pad($str,20,".");
  4. //填充字符串的右侧,到 20 个字符的新长度
12.str_replace()字符串替换
  1. <?php
  2. //把字符串 "Hello world!" 中的字符 "world" 替换成 "Peter":
  3. echo str_replace("world","Peter","Hello world!");
13.trim()移除字符串两侧的空白字符或其他预定义字符。
  1. <?php
  2. $str = "Hello World!";
  3. echo $str . "<br>";
  4. echo trim($str,"Hed!");
  5. //移除字符串左侧的字符("Hello" 中的 "He"以及 "World" 中的 "d!")
14.strpos()查找字符串在另一字符串中第一次出现的位置。
  1. <?php
  2. echo strpos("I love php, I love php too!","php");
  3. //查找 "php" 在字符串中第一次出现的位置,输出 7;
15.strstr()搜索字符串在另一字符串中是否存在
  1. <?php
  2. echo strstr("Hello world!","world"); // 输出 world!
  3. //查找 "world" 在 "Hello world!" 中是否存在,如果是,返回该字符串及后面剩余部分:
  4. //输出 world
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议