我一直在寻找有关如何使用Emogrifier将链接 CSSv3 的 HTML 转换为内联 HTML 格式的信息。到目前为止,我一直在寻找与向不允许 CSS 的网站发送电子邮件有关的事情。
有关我的问题集的更多信息:我有一个 HTML 文档,带有链接的 CSS,格式很好,我需要将其作为 doc(x) 打开。Word 不支持 v1 以上的 CSS。我正在使用 v3。截至目前,由于缺少 CSS,在转换时格式非常糟糕。我有多个 HTML 文档和 CSS 文件要转换为内联格式,并且不想手动进行。
我曾尝试使用Emogrifier,但似乎总是从我的服务器收到错误页面(using MAMP)
。该页面一直有效,直到它到达这些Emogrify
部分。我尝试了带和不带 args 的构造函数。如果没有,我提供了带有 set 函数的 HTML 和 CSS。我还尝试使用 和 传递fopen()
文件file_get_contents()
。
元素和版本:
- MAMP 版本 2
- 阿帕奇 2.0.64
- PHP 5.4.10
问题 1: Emogrifier 可以处理电子邮件以外的事情吗?
问题 2:是否有其他产品/程序可以更好地满足我的需求?
问题3:我的代码有问题吗?
<?php
include(emogrifier.php);
$site = file_get_contents('file.html');
$link = file_get_contents('file.css');
$emog = new Emogrifier($site,$link);
/* alternate call
$emog = new Emogrifier;
$emog->setHTML($site);
$emog->setCSS($link);
*/
$result = $emog->emogrify();
print($result);
?>
编辑
我试图将三种类型的变量传递给构造函数:
- 文件路径
- 文件指针 (fopen())
- 字符串 (file_get_contents())
尝试访问 php 页面时,我在浏览器中收到服务器错误:
网站在检索 http://localhost/file.php 时遇到错误。它可能因维护而停机或配置不正确。
我已经注释掉了构造函数和函数调用,它们允许页面使用 echo 语句“工作”以进行测试。然而,即使只是构造函数取消注释也会导致错误。
当“运行” emogrifier.php 文件时,页面加载得很好(白屏,没有打印输出)。
这是我对这个问题的所有信息。
最终编辑
我只是想把这个包起来。
我从来没有一个表情包来解决我的问题。我最终使用带有大量 VisualBasic 编辑的 Word 宏来获得我们想要的格式。这是一个复杂的解决方案,因为宏系统没有很好的文档记录。另外,由于我要修改很多表格和单元格,谷歌搜索几乎没有帮助,因为在搜索单元格时,所有内容都出现在 Excel 中。
...然后他们将报告格式移至其他格式,而我的工作无论如何都没有使用!哈哈