PHP day4 字符串与mb_strlen函数

1.字符串定义与head响应头

<?php
header('Content-type:text/html;charset=utf-8');  //编码格式改为utf-8,显示中文

$strings = 'xielaoban';  //字符串型 单引号中变量不会被解析
echo '$strings';  //会输出$strings

$food = "蟹黄堡"; //双引号中可以定义变量
echo "午餐是{$food}";  
?>

<?php
$string = "裤头村\"海之霸\"";  //用转义符输出特殊字符
$tree = "iron\$spider\$";  //用转义符输出特殊字符
echo $string;
echo $tree;
echo "输出\\" ; //再用\转译,从而输出\
echo "haha\n \thahajojo";  //在源码中输出时,\n为空格;\t为跳格;

2.定界符与mb_strlen函数

<?php
$string = "<h1 style=\"color:red\">kutoucun</h1> ";
echo $string; //输出红色的kutoucun

$str = <<<haha
<h1 style="color:blue">kutoucun.com<h1>  
haha;
echo $str; //输出蓝色的kutoucun.com,此时使用定界符,不用转译符
?>

<?php
$str1 = "痞老板\n";
$str2 = "蟹老板";
echo $str1.$str2; //连接字符串

$str3 = "www.baidu.com";
echo strlen($str3);  //只是针对单个字节编码字符,也就是说它计算的字符串的总字节数
echo '<hr/>';


$str3 = "I am 妹妹";
echo strlen($str3);  //一个中文占用三个字节 输出11
echo '<hr/>';
echo mb_strlen($str3); 
/** 
 * 如果是多字节编码的,如GBK和UTF8,使用strlen得到的不是字符的格式,而是该字符的总字节数
 * 可以通过使用mb_strlen获取其字符的格式 输出7
*/
echo '<hr/>';
echo mb_strlen($str3,'utf8');
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
以下是 C 语言的代码实现: ```c #include <stdio.h> #include <string.h> #define MAX_N 1000 #define MAX_LEN 80 int main() { int n, max_len = 0, max_i = 0; // max_len:最大字符串长度;max_i:最大字符串下标 char str[MAX_N][MAX_LEN + 1]; // 字符串数组,每个字符串最长 MAX_LEN,加 1 是为了存储字符串结尾的 '\0' scanf("%d", &n); for (int i = 0; i < n; i++) { scanf("%s", str[i]); // 读入字符串 int len = strlen(str[i]); if (len > max_len) { // 更新最大字符串信息 max_len = len; max_i = i; } } printf("%s", str[max_i]); // 输出最大字符串 return 0; } ``` 代码思路: 1. 定义常量 `MAX_N` 和 `MAX_LEN`,分别表示字符串数组的最大长度和每个字符串的最大长度。 2. 定义变量 `n`,表示输入的字符串数量;变量 `max_len`,表示最大字符串的长度;变量 `max_i`,表示最大字符串的下标。 3. 定义二维字符数组 `str`,用于存储输入的字符串。注意,每个字符串最长为 `MAX_LEN`,加 1 是为了存储字符串结尾的 '\0'。 4. 读入输入的字符串,同时更新最大字符串信息。 5. 输出最大字符串。 注意事项: 1. 字符串数组的长度应该足够大,以容纳所有的输入字符串。可以使用常量 `MAX_N` 来定义字符串数组的最大长度。 2. 每个字符串的长度可能不同,应该使用字符串库中的 `strlen()` 函数来获取字符串的长度。 3. 输出字符串时,应该使用 `%s` 格式化符号。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值