请问php如何能在一串汉字中的每个字之间加入一个符号,如:把 '我爱生活' 变成 '我\n爱\n生\n活'

作者&投稿:刘纯 (若有异议请与网页底部的电邮联系)
编码设置相同,PHP读取MYSQL中的汉字显示出来是问号~

你自己用phpmyadmin看一下 应该是数据表的编码不一致

首先需要先把带有中文的字符串进行编码转化,由GB2312编码转化为UTF-8编码。
这样是为了PHP正则表达式可以正确的去匹配
然后通过preg_match_all()函数以及相应的中文匹配正则表达式,把所有的中文匹配出来
最后,把匹配到的中文字符串再转为B2312编码,这样做是为了可以在网页编码为GB2312上正确显示。

例如:
<?php
$str = "ddddvvv(,中文.)dfdsfds字符啊.";

//把GB2312编码转化为 UTF-8编码
$str = mb_convert_encoding($str, 'UTF-8', 'GB2312');

//正则匹配
preg_match_all('/[\x{4e00}-\x{9fff}]+/u', $str, $matches);

//把匹配到的数组连接为字符串
$str = implode('', $matches[0]);

//把UTF-8编码转化为 GB2312编码
$str = mb_convert_encoding($str, 'GB2312', 'UTF-8');

echo $str;
//输出 中文字符啊
?>

function str_split_php5_utf8($str) {
// place each character of the string into and array
$split=1;
$array = array();
for ( $i=0; $i < strlen( $str ); ){
$value = ord($str[$i]);
if($value > 127){
if($value >= 192 && $value <= 223)
$split=2;
elseif($value >= 224 && $value <= 239)
$split=3;
elseif($value >= 240 && $value <= 247)
$split=4;
}else{
$split=1;
}
$key = NULL;
for ( $j = 0; $j < $split; $j++, $i++ ) {
$key .= $str[$i];
}
array_push( $array, $key );
}
return $array;
}
$str = '我爱生活';

$a=implode('\n',str_split_php5_utf8($str));
echo $a;
希望能够帮到你。

把这一串汉字放在一个数组里;
然后循环读出数组每个元素,差加上你要的字符'\n'

$arr[] ='我';
$arr[] ='爱';
$arr[] ='生';
$arr[] ='活';
echo implode('\n', $arr);


在面试PHP工程师时会被问哪些问题
面试官在面试求职的PHP工程师时所问的问题千奇百怪,但由于他们需要的是一个PHP工程师,所以他们提问的问题一般不会偏离以下几个角度:技术线(偏深度):1. 基础知识,比如数据结构,多线程,I\/O,Http协议等。2. 语言深度,比如PHP的运行机制,性能优化,APC(以及其原理等)。3. 源码阅读,比如看过...

问一个PHP问题,请大神回答
你是想在客户端使用javascript来判断,还是想在服务器端用php判断?如果用php判断的话,有几个方法:第一、手机号码首先是一串数字,所以可以先判断数字,再判断位数,判断数字的函数是is_numeric(), 判断位数的函数是 strlen, 那么,示例如下:<?php $Phone = 手机号你自己写; if ( !is_...

拍黄片,简称php,弱弱的问一下,这小段话该怎么理解。
这句话 主要就是想表达 PHP可以静态调用非静态方法 就是这样 不过 静态调用非静态方法的效率要比标准的静态方法调用低的多,所以在效率上也不推荐静态调用非静态方法。另外 在代码的可读性上来看,静态调用非静态方法当然是不被推荐的 所以 在使用java等程序员眼中 php就是乱来 如果这种方法在java...

php如何用操作符 -> 连续访问多个方法
} } \/\/接下来是调用 $Obj = new a; $Obj -> c( 500 ) -> d();\/\/调用运行后,页面会输出500原理解释:在php中, return关键词通常会用于给函数方法返回值并终止该函数方法的运行 比如一个方法a, 如果return 1 那么这个函数最后的返回值就是1,而类对象中,$this表示当前对象, 那...

PHP 面试问哪些问题可以比较准确的反映出应聘者的开发水平
PDO、mysqli、mysql这三种操作数据库的方法,具体有哪些差异?问问javascript\/jquery,不懂javascript得php程序员要么没有什么经验,要么水平比较低。再问问php的设计模式,这个是有没有接受过系统训练的基础了。第一个问题答得好,证明有了解过现代php的开发,用什么框架应该都能快速上手。第二、三个问题...

新手php问题,请问如何在图片代码中增加打印所有标题出来?我想把执行语 ...
row属于数组,可以用foreach或for循环打印出标题

用PHP程序访问一个网页的几个问题
1、如何抓取被访问的那个网页里所有的带get参数的URL地址。如:XXX.PHP?id=21这样的 正则表达式 匹配一下 2、如何判断这个页面是否是报错页面。或者说怎么判断此网页是否正常显示了。可以看返回的状态码 ,比如404叶面不存在 500以上就是出错了 3、如何遍历此站点下的所有网页?只能像蜘蛛一样,一个...

求问一个php链接数据库问题
你可以这样写:连接数据库:<?php $linkA = mysql_connect(...);\/\/这是A数据库 $linkB = mysql_connect(...);\/\/这是B数据库?>这样就行了啊 只是,如果你这样做了之后,你对数据库的操作,就不能省略第二个参数了 比如,在你连接一个数据库的情况下,mysql_query()函数可以省略第二个参...

php。在while循环中调用一个函数。是当调用的函数执行完后再进入下...
你的第一个问题:只有在本次的yihanshu()彻底执行完毕后,才进行下一次while循环。你的第二个问题:可以在yihanshu()里面插入sleep(1000000);例如 yihanshu(){ sleep(10000);\/\/间隔10000秒之后再继续执行 dosomething();}

怎么找到php网站的首页面html怎么访问php页面
php的开始标记与结束标记有:1.xml风格(标准风格推荐使用)代码如下:?php echo这是xml风格的标记;?> xml风格的标记是常用的标记,也是推荐使用的标记,服务器不能禁用,该风格的标记在xml,xhtml中都可以使用。2.脚本风格 代码如下:scriptlanguange=php> echo这是脚本风格的标记;\/script> 3.简短风格 ...

商州区15680142244: php怎么把一个字符串的每个字放到一个数组里去 -
浦蚁左洛: for($i=0;$ivar_dump($arr);

商州区15680142244: 用PHP随机生成一串字符串,然后将这个字符串中的每个字符通过“|”隔开 -
浦蚁左洛: <?php// 参数$var表示30以上的变化幅度,比如为1,就代表30-31之间变化,比如为10,就代表30-40function generateWeirdStr($var){ $t...

商州区15680142244: 用PHP随机生成一串字符串,然后将这个字符串中的每个字符通过“|”隔开 -
浦蚁左洛: // 参数$var表示30以上的变化幅度,比如为1,就代表30-31之间变化,比如为10,就代表30-40 function generateWeirdStr($var){$table='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';$len=rand(30,30+$var);...

商州区15680142244: 如何对php字符串中的每一个字符操作 -
浦蚁左洛: http://cn2.php.net/manual/zh/function.chr.php http://cn2.php.net/manual/zh/function.ord.php 用这两个函数实现最好,php处理字符的能力没有c语言那么强.把这句:$resultString.=$str[$i]+1; 改成:$resultString.=chr(ord($str[$i])+1); echo decode('...

商州区15680142244: 请问php如何获得字符串中的某几段? -
浦蚁左洛: 可以用正则表达式,例如 $str = 'ABC12321312DEF12343254GHJ4387719943'; preg_match('/^ABC(\d+)DEF(\d+)GHJ(\d+)$/i', $str, $_match); $a = $_match[1]; $b = $_match[2]; $c = $_match[3]; echo "{$a}<br />{$b}<br />{$c}";

商州区15680142244: php 分割字符串 -
浦蚁左洛: <?php$str = '1234';$arr = str_split($str);print_r($arr); ?>

商州区15680142244: PHP 随机取一字符串中的一部分字符 -
浦蚁左洛: PHP随机取字符串中一部分字符示例代码: <?php //字符串 $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz"; //1.获取字符串的长度 $length = strlen($str)-1; //2.字符串截取开始位置 $start=rand(0,$length); //3.字符串截取长度 $count=rand(0,$length); //4.随机截取字符串,取其中的一部分字符串 $data=substr($str, $start,$count); echo $data; ?>

商州区15680142244: php,1个字符串组合,将组合中的每两个字符串连在一起组成新的字符,并全部列出. -
浦蚁左洛: $array = array("aaa","adb","dhu","ddid","mjhhai","dddd","djie","ddiebe","oiuo"); foreach($array as $k=>$v){ if($k%2==0){ echo $array[$k].$array[$k+1]."<br/>"; } }

商州区15680142244: php如何获取中文汉字,在某个字段中的位置 -
浦蚁左洛: <?php$mystring = '我是中国人我是安徽人我是人';$findme = '我';$pos = strpos($mystring,$findme,0);//0表示是否是第一次出现,0的话就是,1的话就不是//这时候要看中文是什么编码了,是UTF-8的话就是$pos/3,是GBK或GB2312的话就$...

商州区15680142244: php中怎么将文本中的一串字串符分割 -
浦蚁左洛: 可以通过 strpos 和 substr 两个函数配合得到想要的字符串;或者通过正则函数 preg_match 匹配自己想要的字符串;如果只是想分割,也可以用 explode 来分割函数变成数组.

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