首页 > 后端开发 > 正文

php中explode函数 php中explode截取中文又乱码,求解~~

2024-11-05 04:43:07 | 我爱编程网

php中explode函数 php中explode截取中文又乱码,求解~~很多朋友对这方面很关心,我爱编程网整理了相关文章,供大家参考,一起来看一下吧!

本文目录一览:

php中explode函数 php中explode截取中文又乱码,求解~~

explode — 使用一个字符串分割另一个字符串?

explode
(PHP 4, PHP 5, PHP 7, PHP 8)
explode — 使用一个字符串分割另一个字符串
说明
explode ( string $delimiter , string $string , int $limit = ? ) : array
此函数返回由字符串组成的数组,每个元素都是 string 的一个子串,它们被字符串 delimiter 作为边界点分割出来。
参数
delimiter
边界上的分隔字符。
string
输入的字符串。
limit
如果设置了 limit 参数并且是正数,则返回的数组包含最多 limit 个元素,而最后那个元素将包含 string 的剩余部分。
如果 limit 参数是负数,则返回除了最后的 -limit 个元素外的所有元素。
如果 limit 是 0,则会被当作 1。
由于历史原因,虽然 implode() 可以接收两种参数顺序,但是 explode() 不行。你必须保证 separator 参数在 string 参数之前才行。
返回值
此函数返回由字符串组成的 array,每个元素都是 string 的一个子串,它们被字符串 delimiter 作为边界点分割出来。
如果 delimiter 为空字符串(""),explode() 将返回 false。 如果 delimiter 所包含的值在 string 中找不到,并且使用了负数的 limit , 那么会返回空的 array, 否则返回包含 string 单个元素的数组。
更新日志
版本 说明
5.1.0 支持负数的 limit
4.0.1 增加了参数 limit
范例
示例 #1 explode() 例子

php中explode函数 php中explode截取中文又乱码,求解~~我爱编程网

php中explode截取中文又乱码,求解~~

如下面例子,在GBK编码下会产生乱码。
原因,在php6之前,字符是以字节形式存在的,字符"碪"的gbk字节码是"B4 55",而字符"U"的字节码是"55",在explode函数中第一个参数的字符串会转成相应的字节,然后和第二个参数的字节码比对,进行分割。
在下面例子中就是 55 分割 B4 55 B4 55 55 B4 55 B4 55 ,所以"碪"字被分割了。

这种情况很多,所以在php中使用explode时应多注意!

<?php
$result = explode("U", "碪碪U碪碪");
print_r($result);
?>

我也碰到这问题了,正在研究字母解决

php中explode函数 php中explode截取中文又乱码,求解~~

PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式

我爱编程网(https://www.52biancheng.com)小编还为大家带来PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式的相关内容。

在开发的过程中,经常会遇到需要给别人提供一个输入框,然后别人输入一些ID,或者关键字的东西,例如wordpress的后台的标签输入框:
这个就是只是判断英文状态下的逗号,要是有人不小心输入了中文状态下的逗号怎么办?小数点怎么办?
于是我就用正则写了一个表达式,把带有空格换行符之类的替换成逗号。
把提交的id带有空格换行符之类的替换成逗号,然后用explode函数切换成数组。
复制代码
代码如下:
$ids=$_POST["ID"];
$id=
preg_replace("/(\n)|(\s)|(\t)|(\')|(')|(,)/"
,','
,$ids);
$topicids
=
explode(","
,$tids);
这个是增加了小数点的过滤。
复制代码
代码如下:
$ids
=
preg_replace("/(\n)|(\s)|(\t)|(\')|(')|(,)|(\.)/",',',$ids);
OK,经过这样处理后,就不会有问题了。
提示:其实,小编感觉用JS在提交前就处理掉这个问题,是一个更好的选择。

以上就是我爱编程网为大家带来的php中explode函数 php中explode截取中文又乱码,求解~~,希望能帮助到大家!更多相关文章关注我爱编程网:www.52biancheng.com

免责声明:文章内容来自网络,如有侵权请及时联系删除。
与“php中explode函数 php中explode截取中文又乱码,求解~~”相关推荐
PHP中使用substr截取字符串出现中文乱码问题该怎么办
PHP中使用substr截取字符串出现中文乱码问题该怎么办

php字符串的截取1楼的代码有点问题截取中文会出现问题比如刚好是9个字母1个汉字你截取10位的话就会出现乱码所以截取含中文字符串时要用mb_substr代替substrfor($i=0;$i&lt;strlen($str);$i=$i+10){$string=mb_substr($str,$i,10);echo$string."&lt;br&gt;";}php获取字符串

2024-07-20 06:29:02
如何利用PHP来截取一段中文字符串而不出现乱码
如何利用PHP来截取一段中文字符串而不出现乱码

如何利用PHP来截取一段中文字符串而不出现乱码/*功能:截取全角和半角混合的字符串以避免乱码参数: $str_cut 需要截断的字符串 $length  允许字符串显示的最大长度*/function substr_cut($str_cut,$length = 30){  if (strlen($str_cut) &gt;; $length){  for($i=0; $i &lt; $leng

2024-07-13 12:16:29
php中用explode函数 explode — 使用一个字符串分割另一个字符串?
php中用explode函数 explode — 使用一个字符串分割另一个字符串?

PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式在开发的过程中,经常会遇到需要给别人提供一个输入框,然后别人输入一些ID,或者关键字的东西,例如wordpress的后台的标签输入框:这个就是只是判断英文状态下的逗号,要是有人不小心输入了中文状态下的逗号怎么办?小数点怎么办?于是我就用正则写了一个表达式,把带有空格换行符之类的替换成逗号。把提交的id带有空格换行符之类的

2024-10-26 02:10:51
中文url编码、base64编码,PHP解码中文部分乱码 PHP下编码转换函数mb_convert_encoding与iconv的使用说明
中文url编码、base64编码,PHP解码中文部分乱码 PHP下编码转换函数mb_convert_encoding与iconv的使用说明

php中explode截取中文又乱码,求解~~如下面例子,在GBK编码下会产生乱码。原因,在php6之前,字符是以字节形式存在的,字符"碪"的gbk字节码是"B455",而字符"U"的字节码是"55",在explode函数中第一个参数的字符串会转成相应的字节,然后和第二个参数的字节码比对,进行分割。在下面例子中就是55分割B455B45555B455B455,所以"碪"字被分割了。

2024-11-30 10:14:28
PHP中list()函数的用法?(PHP问题-list($usec, $sec) = explode(" ", microtime());)
PHP中list()函数的用法?(PHP问题-list($usec, $sec) = explode(" ", microtime());)

PHP中list()函数的用法?list($key,$value)和each()一起使用是将数组当前指针所指向单元的键/值对分别赋值给变量$key,$value注意:是当前单元的噢!下面说说list()的功能和作用在老版本的PHP中list()是和each()一起用来遍历数组的,但是在现在流行PHP5中已经被foreach($arrayas$key=&gt;$value)给代替,

2025-02-22 06:41:47
php分割数组函数 split和explode的区别(同一个PHP文件中用substr_replace函数时出现乱码问题,用str_ireplace函数时正常,究竟问题出在哪儿了)
php分割数组函数 split和explode的区别(同一个PHP文件中用substr_replace函数时出现乱码问题,用str_ireplace函数时正常,究竟问题出在哪儿了)

php分割数组函数split和explode的区别一句话总结这三个分割函数的explode用字符串分割,split和preg_split用正则分割.效率方面:explode最快,其次preg_split最后split.split()函数用正则表达式来把字符串拆分并返回数组,如果出错则返回false。用法:split(string$pattern,string$string

2024-09-23 13:06:36
PHP explode函数的几个应用 php分割数组函数 split和explode的区别
PHP explode函数的几个应用 php分割数组函数 split和explode的区别

php explode 问题当我们处理PHP中的文件操作时,file()函数扮演着关键角色。它不像file_get_contents()那样一次性读取整个文件内容,而是将文件分解为一个数组,每行数据作为一个数组元素,包括行尾的换行符。如果文件读取过程出错,file()函数会返回false。而explode()函数则在字符串处理中发挥功效,它能够根据指定的分隔符separator,将字符串拆分

2024-12-11 06:16:15
php中exec乱码问题怎么解决?
php中exec乱码问题怎么解决?

php中exec乱码问题怎么解决?在PHP中使用exec函数可能遭遇乱码问题,原因是执行命令返回的数据包含非ASCII编码字符,而PHP默认使用ASCII编码处理数据,因此无法正确解读这些字符。解决方法包括:使用iconv函数转换命令输出数据的编码,使其与PHP使用的编码一致,例如,若命令输出为UTF-8编码,PHP使用GBK编码,可这样操作。若PHP环境与命令执行环境编码相同,则考虑

2025-02-06 02:20:53