Php 无法在'上爆炸þ';使用文件获取内容()时
我需要获取远程文件的内容,然后在符号“þ”上分解这些内容 如果我正在分解的字符串只是一个局部变量,我可以让它工作,但我无法让它与文件_get_contents()一起工作 结果:Php 无法在'上爆炸þ';使用文件获取内容()时,php,Php,我需要获取远程文件的内容,然后在符号“þ”上分解这些内容 如果我正在分解的字符串只是一个局部变量,我可以让它工作,但我无法让它与文件_get_contents()一起工作 结果: array(8) { [0]=> string(1) "1" [1]=> string(16) "Classic Los 1/10" [2]=> string(0) "" [3]=> string(2) "15" [4]=> string(1) "1
array(8) {
[0]=>
string(1) "1"
[1]=>
string(16) "Classic Los 1/10"
[2]=>
string(0) ""
[3]=>
string(2) "15"
[4]=>
string(1) "1"
[5]=>
string(4) "True"
[6]=>
string(1) "2"
[7]=>
string(2) "Cu"
}
array(1) {
[0]=>
string(42) "1þClassic Los 1/10þþ15þ1þTrueþ2þCú"
}
结果:
array(8) {
[0]=>
string(1) "1"
[1]=>
string(16) "Classic Los 1/10"
[2]=>
string(0) ""
[3]=>
string(2) "15"
[4]=>
string(1) "1"
[5]=>
string(4) "True"
[6]=>
string(1) "2"
[7]=>
string(2) "Cu"
}
array(1) {
[0]=>
string(42) "1þClassic Los 1/10þþ15þ1þTrueþ2þCú"
}
当我使用file_get_contents()时,为什么不能对该符号进行分解?在PHP脚本中输入符号时,该符号的编码必须与文本文件中的编码匹配 确保编码匹配。检查IDE以查看PHP脚本保存为什么编码 如果出于某种原因,您不想/不能更改任何一方的编码
- 如果您的PHP脚本是ISO-8859-1/Windows-1252,文本文件是utf-8,请使用
$parts = explode(utf8_encode("þ"), $string);
- 如果您的PHP脚本是UTF-8,文本文件是ISO-8859-1/Windows-1252,请使用
$parts = explode(utf8_decode("þ"), $string);
- 如果脚本和文本文件是其他组合,也可以使用
iconv()
file.txt
中的编码不同(例如,分别为UTF-8和Latin1),则它们将不匹配,因此不会分解
您对file.txt
使用的编码是什么?如果它是UTF-8,那么它应该可以直接工作,但是如果它是其他的,那么可能就不行了。不知道这个符号,但是你有没有尝试过用类似于“%EXPLODE%”的其他符号替换它,然后在新变量上EXPLODE?JSON编码要标准化得多,对PHP友好得多。+1他会这样做:$parts=EXPLODE(utf8_编码(“þ”),$string);
或$parts=explode(utf8_解码(“þ”),$string);
?