很多站长朋友们都不太清楚php中文逗号,今天小编就来给大家整理php中文逗号,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 PHP 怎么将空格或中文逗号转为英文逗号? 2、 PHP中逗号和点号的区别 3、 php 我将中文的逗号换成英文的逗号。咋不好使? PHP 怎么将空格或中文逗号转为英文逗号?//字符串
$str = 'php,java,go javascript ruby';
//替换符号数组(需要替换那些符号,则加到该数组)
$search = array(' ',',');
//替换后的符号
$to = ',';
$string = str_replace($search, $to, $str);
echo $string;
PHP中逗号和点号的区别复制代码
代码如下:
echo
'abc'.'def';
//用点号连接字符串
echo
'abc','def';
//用逗号连接字符串
那么下面我们就举一些例子.来认清楚他们之前的区别.
复制代码
代码如下:
echo
'1+5='
.
1+5;
看看上面的.输出的结果是6..而不是1+5=6.有些神奇吧?
更神奇的是你看下面的例子.
复制代码
代码如下:
echo
"1+5="
.
5+1;
//输出2
结果十分奇怪.我们看到.我们把5和1换下位置.结果就变成2了.
为什么会这样.难道在PHP中加法是没有交换律的?当然不是..
我们先不去想为什么.如果我把上面的点号换成逗号试下.
复制代码
代码如下:
echo
'1+5='
,
5+1;
//输出
1+5=6
echo
'1+5='
,
1+5;
//输出
1+5=6
可以看出.只有使用逗号我们才可以得到意料中的结果.
那为什么点号就不行呢?逗号为什么就行呢?
复制代码
代码如下:
echo
('1+5'
.
5)+1;
//输出2
我们给前面的加个括号后.得到的结果是一样的.证明PHP是先连接字符串再进行加法计算了.按照从左向右的方向进行的.
那么好.既然是先连接的字符串.那么就应该是"1+55"了.然后再用这个字符串加上1.那为什么就会输出2呢?
这个跟PHP中字符串变成数字的机制是相关的.我们来看下面的例子
复制代码
代码如下:
echo
(int)'abc1';
//输出0
echo
(int)'1abc';
//输出1
echo
(int)'2abc';
//输出2
echo
(int)'22abc';
//输出22
从上面的例子我们可以看出.如果将一个字符串强制转换成一个数字.PHP会去搜索这个字符串的开头.如果开头是数字就转换.如果不是就直接返回0.
回到刚才的1+55.既然这个字符串是1+55.所以强制类型转换后就应该是1了.在此基础上加1.当然是2了.
为了证明我们的猜想.我们来验证一下.
复制代码
代码如下:
echo
'5+1='
.
1+5;
//输出10
echo
'5+1='
.
5+1;
//输出6
echo
'1+5='
.
1+5;
//输出6
echo
'1+5='
.
5+1;
//输出2
结果证明.我们的设想是正确的.
那么为什么使用逗号就没有上面的问题了呢?
手册上说了.用逗号是multiple
parameters.
也就是说是多参数.换句话说.
逗号分隔开的就相当于是N个参数.也就是说把echo当个函数用.
这样的话.echo会对每个参数先进行计算.最后再进行连接后输出.所以我们用逗号就不存在上面的问题了
php 我将中文的逗号换成英文的逗号。咋不好使?strtr() 函数是转换字符串中特定的字符。以一个字节为单位,一一对应替换;
例如:
strtr("Hilla Warld","ia","eo");的结果会是:Hello World;
你的场景是用英文的逗号(1个字节)去替换中文的逗号(3个字节),正常来说是会出现乱码的,改用str_replace吧:str_replace(",",",",$tags);
关于php中文逗号的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php中文逗号 php中如何设置字符集的详细内容...