将提交的textarea与初始值进行比较

时间:2015-02-24 16:15:14

标签: php html textarea

我想将一个数组(从文本文件中)输出到textarea中,让用户更改它,然后将该数组保存回文本文件。

<textarea name="text"><? echo(html_entity_decode(implode("\n", $array))) ?></textarea>

在将数组存储回文本文件之前,我想确保实际上某些内容已被更改。

if ($_POST['text'] != html_entity_decode(implode("\n", $array))) {
    // SAVE THE TEXT BACK TO THE FILE
}

但即使未提交任何更改,上述条件也始终返回true

我做错了什么?提交时输入还有其他功能吗?

1 个答案:

答案 0 :(得分:1)

也许试试

if(strcmp(preg_replace( "/\r|\n/", "", $_POST['text']), html_entity_decode(implode("\n", $array))) != 0){
    // SAVE THE TEXT
}

这有点难以阅读,但基本上preg_replace应该从POST数据中删除换行符,以便将其与原始数组进行比较。希望这对你有用!