批改状态:合格
老师批语:
//------------------------------字符串操作-----------------------------------------------// 1. 将数组转为字符串打印: implode(连接符, 数组)和join()是同名函数, 返回的是一个字符串, 例:echo 'implode函数: ', implode('---', [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]), '<br>';echo 'join函数: ', join('---', [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]), '<hr>';// 2.把一个字符串解析成一个函数: explode(字符串中的分隔符, 字符串, 切割的间隔),返回的是一个数组, 例:print_r(explode(', ', 'z, x, c, v, b, n, n'));echo '<br>';print_r(explode(', ', 'z, x, c, v, b, n, n', 3)); // Array ( [0] => z [1] => x [2] => c, v, b, n, n )echo '<hr>';// 3. 把一个关联数组解析成字符串并赋值给对应键值创建的变量: extract(数组),返回的是解析后的变量数 例:extract(['name' => '张三', 'age' => 20, 'sex' => '男']);printf('姓名: %s, 年龄: %d, 性别: %s', $name, $age, $sex); // 姓名: 张三, 年龄: 20, 性别: 男echo '<hr>';//4.子串操作: substr(字符串, 起始索引, 长度). 返回的是一个新的字符串,并不会影响到原本的字符串,例:$str = 'abcdefghijklmnopqrstvwxyz';echo substr($str, 1, 5), '<hr>';// 5.统计字符串出现的次数: substr_count(字符串, 要查询的字符, 起始位置(默认从零开始), 长度(默认长度为字符串的长度)), 返回的是一个数字, 例:$str = 'abcdefghijklmnopqrstvwxyzabcdefghijklmnopqrstvwxyzabcdefghijklmnopqrstvwxyzabcdefghijklmnopqrstvwxyz';echo '数组中a出现的次数: ', substr_count($str, 'a'), '<hr>';// 6.字符串的替换操作: substr_replace(字符串, 要替换的字符, 起始位置(默认从零开始), 长度), 返回结果为全新的 字符串/数组,例:$str = 'abcdefghijklmnopqrstvwxyz';echo substr_replace($str, '你好,世界!', 0), '<br>'; // 默认长度不填的话长度为字符串长度echo $str, '<br>';echo substr_replace($str, '你好,世界!', 0, 5), '<br>';echo $str, '<hr>';// 7. 字符串切割为数组: str_split(字符串, 切割的间隔, 默认为1), 返回的是一个数组.字符串中有中文的画不要使用该函数,应该用mb扩展. 例:$str = 'abcdefghijklmnopqrstvwxyz';print_r(str_split($str));echo '<hr>';// 8. 向一个字符串中插入字符串并指定长度: str_pad(字符串, 长度, 插入字符串, 插入位置(0: 全插入到左边, 1: 全插入到右边, 2: 左右等分));$str = 'abcdefghijklmnopqrstvwxyz';echo str_pad('php', 10,'=',STR_PAD_BOTH),'<br>';echo str_pad($str, strlen($str)+10, '~', 0), '<hr>';//9. 重复字符窜: str_repeat(字符串, 重复次数), 返回一个新的字符串 例:echo str_repeat('ABA--', 10),'<hr>';// 10. 替换: str_replace(准备替换字符串/数组, 要替换的字符串, 字符串), 如果替换的是关联数组的话, 第一个参数为value值., 例:$str = 'abcdefghijklmnopqrstvwxyz';$arr = [1,2,3,4,5,67];echo str_replace('abc', 'ABC', $str),'<br>';print_r(str_replace(67, 'ABC', $arr));echo '<br>';print_r(str_replace('张三', '李四', ['name' => '张三', 'age' => 20, 'sex' => '男']));echo '<hr>';// 11. 获取字符串的位置: strPps(字符串, 要查询的字符串, 查询的起始位置(默认从起始位置开始)), 例:$str = 'abcdefghijklmnopqrstvwxyz';echo strpos($str, 'abc', 10), '<hr>' ;// 12. 查询字符首次出现的位置, 并返回它: strstr(字符串, 要查询的字符串, false(返回查询字符串的后面的字符串)/true(返回查询字符串的前面的字符串)[默认false])echo strstr('abcdefghijklmnopqrstvwxyz', 'k'), '<br>';echo strstr('abcdefghijklmnopqrstvwxyz', 'k', true), '<hr>';// 13. url相关// 13.1 把查询字符串解析到一个数组中: parse_str(查询字符串, 变量名),返回一个数组. 例:$cxzfc = 'name=张三&age=20';parse_str($cxzfc, $cxzfcArr);print_r($cxzfcArr);echo '<hr>';// 13.2 解析url: parse_url(url), 返回一个数组, 例:$url = 'http://php.io/0201/demo4.php?id=5&name=admin%role=1';print_r(parse_url($url));echo '<hr>';// 13.3 快速构造查询字符串: http_build_query(参数), 返回字符串. 例:echo http_build_query( ['name' => '张三', 'age' => 20, 'sex' => '男']), '<hr>';ob_clean();//----------------------------------------------------------------------------------------------------------// 1. 翻转字符串: strrev(字符串), 例:echo strrev('HELLO WORLD!'), '<hr>';// 2. 获取字符串的长度: strlen(字符串), 例:echo strlen('nihao'), '<hr>'; // 5// 3. 英文字符串转小写: strtolower(字符串), 返回一个新的字符串// 4. 英文字符串转大写: strtoupper(字符串), 返回一个新的字符串$str = 'abcdefghijklmnopqrstvwxyz';echo strtoupper($str), '<hr>'; // 5echo strtolower($str), '<hr>'; // 5// 5. 字符串中每个英文单词(该函数中: 以英文开头并以空格分隔的都是英文单词)的首字母转大写: ucwords(字符串), 返回一个新的字符串echo ucwords($str), '<br>'; // Abcdefghijklmnopqrstvwxyzecho ucwords($str . ' qfw你好'), '<hr>'; // Abcdefghijklmnopqrstvwxyz Qfw你好//6. 以英文字母开头的整个字符串的首字母转换成大写: ucfirst(字符串), 返回一个新的字符串echo ucfirst($str . ' qfw你好'), '<br>'; // Abcdefghijklmnopqrstvwxyz qfw你好echo ucfirst('你好qfw' . $str), '<hr>'; // 你好qfwabcdefghijklmnopqrstvwxyz//7.获取字符串在另一个字符串中最后一次出现的位置: strrchr(要搜索的字符串, 要查找的字符串)echo strrchr($str, 'qfw'), '<hr>'; // 你好qfwabcdefghijklmnopqrstvwxyz ---> qrstvwxyz// 8. 随机地打乱字符串中的所有字符: str_shuffle(字符串), 不支持中文字符echo str_shuffle('qfwabcdefghijklmnopqrstvwxyz'), '<hr>'; // qfwabcdefghijklmnopqrstvwxyz ---> bjznmlcxwrfohqvistafkpwgqdye// 9. 得到指定字符的ASCII: ord($char)// 10. 根据ASCII得到指定的字符: chr($ascii), 不支持中文,要用mb扩展$str = 'A';echo ord($str), '<br>';echo chr(ord($str)), '<br>';$str = '你好';echo ord($str), '<br>';echo chr(ord($str)), '<hr>'; // �// 11. 返回字符串中单词的使用情况: str_word_count(字符串, 指定函数的返回值(0: 返回单词数量, 1: 返回包含所有的单词的数组,// 2: 返回包含所有的单词的数组,key是该单词出现的位置))$juzi = 'People die, but real love is forever.生命会消逝,但真爱永存。is forever';echo str_word_count($juzi), '<br>';var_dump(str_word_count($juzi, 1));echo '<br>';var_dump(str_word_count($juzi, 2));echo '<hr>';// 12. 以二进制的方式比较字符串(不区分大小写): strcasecmp(字符串1, 字符串2), 返回一个数字(// >0: 字符串1>字符串2,// <0: 字符串1<字符串2,// ==0: 字符串1==字符串2)var_dump(strcasecmp('AB C', 'ab c')); // 65===65 || 97===97 0echo '<hr>';// 13. 以二进制的方式比较字符串: strcmp(同12)var_dump(strcmp('AB C', 'ab c')); // 65<97 -1echo '<hr>';// 15. 二进制安全比较字符串开头的若干个字符(不区分大小写):strncasecmp(字符串1, 字符串2, 最大比较长度)var_dump(strncasecmp('AB C', 'ab c', 2)); // // (65===65, 66===66) || (97===97, 98===98) ===> 0echo '<hr>';// 16. 二进制安全比较字符串开头的若干个字符: strncmp(字符串1, 字符串2, 最大比较长度)var_dump(strncmp('Ab C', 'bA c', 2)); // (65, 98) || (98, 65) ===> 65<98 ===> -1echo '<hr>';// 17. 从字符串中去除 HTML 和 PHP 标记: strip_tags(字符串, 可选参数, 指定不用去除的字符),返回一个字符echo strip_tags('asasa<a>fasfas</a><br>'), '<br>';echo strip_tags('asasa<a>fasfas</a><br><span>爱搭搭所多span</span><b>爱搭搭所多b</b>', '<br><span><b>'), '<br>';// 18. 打断字符串为指定数量的字串: wordwrap(字符串, 切割长度, 拼接字符串, false(切割的位置是英文单词的话将不会把这个单词切割,/true)$text = " The quick brown fox jumped over the lazy dog. ";echo wordwrap($text, 6, ',<br>'), '<hr>';echo wordwrap($text, 3, ',<br>', true), '<hr>';// 19. 去除字符串首尾处的空白字符(或其他字符): trim(字符串, 可选参数,去除的字符),返回一个字符串echo trim($text), '<hr>';$text = "\nThe quick brown fox jumped over the lazy dog.\t";echo trim($text), '<hr>';// 20.标记分割字符串: strtok(字符串, 分割字符串时使用的分界字符), 注意,该函数只有致癌第一次调用的时候才有第一个参数,// 再次调用时,该函数会记住它在字符串 string 中的位置.$text = "The quick brown fox jum\nped over the lazy dog.t";/* 使用制表符和换行符作为分界符 */$tok = strtok($text, " \n\t");echo $tok, '<br>';while ($tok !== false) {echo "Word=$tok<br />";$tok = strtok(" \n\t");}
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号