一个php小问题

作者&投稿:沈健 (若有异议请与网页底部的电邮联系)
php 的一个小问题~

//你的$i是局部变量,没有定义,所以应该输出不出来什么东西 "> <?php }

anwser[]你写错了,应该是answer[],,粗心了吧??

因为中文占的字节数是2个。你这里有9个中文,就有18个字节,再加上2个符号,加起来就是20了
我改的代码,你参考下,我这个是标点符号也算一个字,如果帮到你,请采纳!
<?php
//header("Content-type: text/html; charset=utf-8");
$txt1="你好!";
$txt2="这是第一个网页.";
echo $txt1 . " " . $txt2;
echo "<br/>";
$txt1_count = 0;
$txt2_count = 0;
for($i=0;$i<strlen($txt1);$i++){
if(ord(substr($txt1,$i,1))>0xa0){
$i++;
$txt1_count++;
}else{
$txt1_count++;
}
}
for($i=0;$i<strlen($txt2);$i++){
if(ord(substr($txt2,$i,1))>0xa0){
$i++;
$txt2_count++;
}else{
$txt2_count++;
}
}
echo $txt1_count;
echo "<br/>";
echo $txt2_count;

?>

原因:strlen计算中文字符的长度时每个字符3个字节(UTF-8编码,GBK2字节),你那里的一个汉字长度3,英文标点1个长度为1,共9个汉字,2个标点,9*3+2=29
修改方法:上网查了一下,需要自己写一个函数,如下:
$txt1="你好!";
$txt2="这是第一个网页.";
echo $txt1 . " " . $txt2;
function strlen_utf8($str) {
$i = 0;
$count = 0;
$len = strlen ($str);
while ($i < $len) {
$chr = ord ($str[$i]);
$count++;
$i++;
if($i >= $len) break;
if($chr & 0x80) {
$chr <<= 1;
while ($chr & 0x80) {
$i++;
$chr <<= 1;
}
}
}
return $count;
}
echo '共('.strlen_utf8($txt1.$txt2).')字';


PHP必须知道的300个问题目录
Dreamweaver开发PHP的步骤 第16章:PHP项目开发技巧 如何隐藏PHP文件扩展名?IIS服务器中伪静态功能的实现 Apache服务器伪静态功能的实现 如何在分页类中处理伪静态URL 动态生成静态页面的技巧 利用 Zend_mail 发送邮件的实例 解决mail()函数邮件标题乱码问题 如何发送带附件的邮件 邮件群发的实现 这个HTML...

php开发会遇到什么问题
十大php开发常见问题盘点1、使用MyISAM而不是InnoDBMyISAM是默认使用的。但是除非你是建立一个非常简单的数据库或者只是实验性的,那么到大多数时候这个选择是错误的。MyISAM不支持外键的约束,这是保证数据完整性的精华所在啊。另外,MyISAM会在添加或者更新数据的时候将整个表锁住,这在以后的扩展性能上会...

PHP的问题,编写一个程序对三个数按由小到大的顺序排列
以下是一个简单的PHP程序,用于对三个数进行由小到大的排序:php<?php function sortNumbers($a, $b, $c) { if ($a > $b) { temp = $a;a = $b;b = $temp;} if ($a > $c) { temp = $a;a = $c;c = $temp;} if ($b >(10, 2, 8);sortedNumbers = sortNumbers(...

两个php小问题
require html文件,php程序是直接输出,不做任何解析的,因为他是html文件,所以不会报错,如果你把后缀名改为php,require之后就会报错了,因为php程序需要解析,不规范就报错。你在php中直接写html也是会报错的,因为不符合php的语法规范,你必须像第一个那样写在<?php ?>标签外面,如果非要写在php标...

关于php的一点小问题
很简单,<?php ?>是PHP的分界符,也就是说服务器会根据分界符来来执行PHP语句,其余的一律当成普通HTML文本输出。举个例子:这是<?php echo 'PHP';?>文件。这是PHP文件。\/\/ 以上两句话结果都是一样的,但是前者被服务器执行了PHP的语法解析器,输出了字符串PHP。而后者完全就是一个普通文本,没...

一个简单的php问题,请大侠指点
1:改成php 输出头的编码信息为 gb2312 header('Content-type: application\/x-json; charset=gb2312');当然也要把文件的编码改一下,免得输出的汉字为乱码。2: 改变程序返回信息为数字和字段,就没有编码问题 if(is_array(mysql_fetch_row($result))){ echo "1";}else{ echo "0";} } JS...

php的一个问题
_SERVER是一个全局变量,它是一个数组,它的值是预定义的。因此你只要直接访问就可以了。至于没有分号,这是因为语句后面紧接着就是php关闭标签“?>”,这种情况结尾分号可以省略。附:服务器变量 $_SERVER 详解:1、$_SERVER['PHP_SELF'] -- 获取当前正在执行脚本的文件名 2、$_SERVER['SERVER_...

一个简单的PHP程序问题,求大神给解答一下详细一点。多谢啦
第一个不输出,第二个a=1,b=1,第三个你确定是 | 运算符?

php 简单问题
很简单,首先,点号和加号是同一级的运算符,而且是从左至右运算符,那么,第一个输出先进行连接运算,最后相当于输出字符串"2"与$a相加的结果。那么字符串不是数字型文本,他与整数运算是被转换诚0,所以最后的值是-1.第二个很常规,不用解释了吧?

php新手,小问题,特简单,真的
这个scalar是对于强制转换后的对象内置成员变量.只要不是数组,强制转换后的其他值都会存放在这scalar成员变量中.因此并不是函数.你可以使用var_dump($obj)来打印看看.=== 你看的很仔细,新人,的确要有这种精神!

靖边县13186288013: php中的一个小问题
关妮八珍: 有点小小的区别吧,单引号的速度比双引号的略快,因为双引号需要检测他里面是否含有变量,而单引号不需要.看用法吧.另一个区别就是,双引号里面可以有变量,单引则不可(会被解析成字符串).

靖边县13186288013: PHP的一个小问题 -
关妮八珍: $num%2==2是错的,应该修改为$num%2==0$num%2表示$num除以2的余数,这个余数只可能是0和1,0表示$num是偶数,1表示是奇数

靖边县13186288013: PHP中得一个小问题
关妮八珍: <?php session_start(); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns=" http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="...

靖边县13186288013: php的小问题 -
关妮八珍: $(document).ready(function (){ var text=$("#t").val(); if(text=="" || text...

靖边县13186288013: PHP一个超级简单的问题~~ -
关妮八珍: 是下面这行错了:$sql="SELECT * FROM 'test'"; 应该修改为:$sql="SELECT * FROM test";

靖边县13186288013: 关于一个简单的PHP小问题
关妮八珍: <?php $cid = 47; foreach(arclist("cid=$cid row=5 titlelen=18 order=aid orderway=desc") as $list){ echo substr($list['pic']."|",0,strlen($list['pic']."|")-1); } ?>

靖边县13186288013: 一个很简单的PHP编程遇到的小问题 -
关妮八珍: mb_internal_encoding("UTF-8");然后用mb_split()这个函数来分割字符串.

靖边县13186288013: 新手求助PHP的一个简单问题 -
关妮八珍: PHP Deprecated: Comments starting with '#' are deprecated in /etc/php5/cli/conf.d/ming.ini on line 1 in Unknown on line 0 原因:你的配置文件ming.ini中配置有问题:提示的意思是说 你这个文件中的注释不能用#开头,这种注释方式已经过时了...

靖边县13186288013: php里的一个小问题```请大家帮忙``
关妮八珍: 转义字符,就是将一些特殊的不安全字符转换成html代码

靖边县13186288013: PHP小问题 -
关妮八珍: 可以 a.php <?php function hello($str); {return $str;} ?>b.php <?php include("a.php"); echo hello("Hello World!"); ?>

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网