0

我想在 PHP 中创建一串非标准字符,例如字符 128-255,然后将所述字符串编码为 CP1252:

<?php
$cp1252 = '';

for ($i = 128; $i < 256; $i++) {
    $hex = dechex($i);
    $cp1252 .= "\x$hex";
}

echo $cp1252;

我知道这行不通,因为在初始化变量之前解析了转义序列(如果我错了,请纠正我),所以这是我想做的一个例子。

这是我用来测试 CP1252 到 UTF-8 转换的最终代码:

<?php
$cp1252 = '';

for ($i = 128; $i < 256; $i++) {
    $cp1252 .= chr($i);
}

echo iconv("CP1252", "UTF-8", $cp1252);
4

2 回答 2

4

使用该chr()函数将字符代码转换为字符串:

for ($i = 128; $i < 256; $i++) {
    $cp1252 .= chr($i);
}
于 2013-10-23T21:12:50.567 回答
1

要生成一串随机字符:

function rand_cp1252($length) {
  $ostr = '';
  for($i=0;$i<$length; $i++) {
    $ostr .= chr(rand(128,255));
  }
  return $ostr;
}

echo rand_cp1252(10);

就与字符串本身无关的“编码”而言,您要确保在提供数据时为编码类型设置正确的标头。

于 2013-10-23T22:13:07.290 回答