我已经说服我的老板使用PHP(PHP版本5.2.8)进行排版。 这是我到目前为止所得到的(如果您看到错误的日文字符,则将字符编码设置为Unicode(UTF-8)):
demo page at my personal website
基本上,如果你将拉丁样本段落复制并粘贴到textarea并单击按钮,一切运行正常,你可以通过将结果粘贴到记事本中进行检查来验证(尽管事实上我没有做任何事情)使用连字符表示由新行分隔的单词。)
然而,当它带有非拉丁/亚洲字符时,没有任何内容被打印出来。我没有收到任何错误信息,根本看不到任何东西......
以下是我的代码:
<?php
$words = typesetWords($_POST['words']);
echo json_encode(array('feedback' => $words));
function typesetWords($words, $lineLength = 70)
{
try
{
$result = '';
$paragraphs = explode("\n\n", $words);
foreach($paragraphs as $paragraph)
{
$paragraph = str_replace("\n", "", $paragraph);
$length = strlen($paragraph);
$numberOfLines = intval($length / $lineLength);
$tmp = '';
if($numberOfLines > 0)
{
for($i = 0; $i < $numberOfLines; $i++)
$tmp .= substr($paragraph, $i * $lineLength, $lineLength)."\n";
$tmp .= substr($paragraph, -1 * ($length % $lineLength))."\n\n";
$result .= $tmp;
}
else $result .= $paragraph."\n\n";
}
}
catch(Exception $e)
{
return $e->getMessage();
}
return $result;
}
&GT;
我试图直接返回表单发送的内容,我确实看到了日文示例段落没有问题。所以我认为其中一个PHP库函数必须具备 导致错误,但我无法分辨哪一个以及如何解决它......
非常感谢提前!