Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用php突出显示超大文件之间的差异_Php_Javascript_Html_Plugins_Winmerge - Fatal编程技术网

使用php突出显示超大文件之间的差异

使用php突出显示超大文件之间的差异,php,javascript,html,plugins,winmerge,Php,Javascript,Html,Plugins,Winmerge,我想写一个web界面,显示两个非常大的文件之间的差异。我通常使用winmerge,但这意味着我需要登录到服务器,复制文件,然后比较它们。我喜欢的步骤太多了。我想写一个基本上做同样事情的web界面。有没有人知道有一个好的可靠的php库可以做这样的事情? 请记住,此文件有20k行长,因此需要可靠,不需要超高速。使用系统命令diff,然后解析结果。格式规则且易于理解。要补充Amadan的想法: 创建一个包含两个文件输入字段的HTML表单,并使用以下内容: echo exec('diff ' . $_F

我想写一个web界面,显示两个非常大的文件之间的差异。我通常使用winmerge,但这意味着我需要登录到服务器,复制文件,然后比较它们。我喜欢的步骤太多了。我想写一个基本上做同样事情的web界面。有没有人知道有一个好的可靠的php库可以做这样的事情?
请记住,此文件有20k行长,因此需要可靠,不需要超高速。

使用系统命令
diff
,然后解析结果。格式规则且易于理解。

要补充Amadan的想法:

创建一个包含两个
文件
输入字段的HTML表单,并使用以下内容:

echo exec('diff ' . $_FILES['file1']['tmp_name'] . ' ' . $_FILES['file2']['tmp_name']);

你试过什么?我现在正在做阿曼丹建议的事。运行系统命令并显示带有某些格式的结果。不过,用户似乎不喜欢这种格式,我想一定有一个库为我提供这种格式。与移动到始终匹配的行并排比较是最需要的功能,我不想重新发明轮子。
exec
只返回最后一行,因此这不会很好地工作。您可以使用backticks、
system
命令(在这种情况下不使用
echo
),也可以使用第二个参数执行
exec
。另外,如果我习惯于WinMerge,我会讨厌网页上的普通
diff
输出-因此“解析结果”。我只是稍微深入一点,我同意你的所有观点。如果他不知道如何从PHP内部执行系统命令,这将为他提供他所需要的。显然,需要对输出进行解析并对网页进行预处理。