我想让我的php脚本从命令行调用phantomjs,这将从许多html文件中生成多个pdf。所以我有一个连接字符串与路径我的HTML文件,接下来我调用exec命令:通过PHP在PhantomJs中打开多个html文件抛出语法错误

$myFile1 = dirname(__FILE__)."/testFile0.html";

$myFile2 = dirname(__FILE__)."/testFile1.html";

$myFile3 = dirname(__FILE__)."/testFile2.html";

$files = array($myFile1, $myFile2, $myFile3);

$command = 'phantomjs '.dirname(__FILE__).'/render.js '.implode('|', $files);

exec($command, $phantomOut);

echo print_r($phantomOut);

当我打电话“phantomjs render.js‘的file1.html | file2.html’”一切正常。但是,试图从PHP脚本做到这一点的时候,我发现了以下错误的Apache的error_log:

testFile1.html: line 1: syntax error near unexpected token `

testFile1.html: line 1: `/p>

我使用的是看起来很好的HTML文件,所以我出的什么会导致思路这个。在浏览器中运行此脚本时的输出是:Array () 1,而不是我在命令行中获得的文本。

下面是PhantomJs渲染脚本:

var page = require('webpage').create(),

addresses = phantom.args[0],

outputPath = '/path_to_pdf/',

outputFilename,

filesArray, outputArray = [],

loadInProgress = false,

pageIndex = 0,

interval;

page.viewportSize = { width: 600, height: 600};

if(addresses.indexOf('|') !== -1){

filesArray = addresses.split('|');

} else{

filesArray = [addresses];

}

interval = setInterval(function() {

if (!loadInProgress && pageIndex < filesArray.length) {

page.open(filesArray[pageIndex]);

}

if (pageIndex === filesArray.length) {

console.log('OUTPUT: ', outputArray.join('|'));

phantom.exit();

}

}, 250);

page.onLoadStarted = function() {

loadInProgress = true;

};

page.onLoadFinished = function() {

loadInProgress = false;

outputFilename = 'print'+pageIndex+'.pdf';

page.render(outputPath+outputFilename);

outputArray.push(outputFilename);

pageIndex++;

}

一个js文件 多个html文件怎么打开,通过PHP在PhantomJs中打开多个html文件抛出语法错误...相关推荐

  1. 计算机受控文件夹管理,小技巧分享:如何在Windows 10中启用和使用受控文件夹访问!...

    勒索软件非常猖獗,除了安装防病毒软件外,您还需要格外小心以保护Windows计算机的安全.尽管人们始终可以使用一种反勒索软件,但Windows 10现在通过在Windows Defender安全中心中 ...

  2. python网址在浏览器能打开_Python - Flask - 在默认浏览器中打开一个网页

    第一部分负责抓取网页并提取一些信息并将其插入到数据库中. 第二部分是resposible使用数据库来呈现这些信息. 两部分共享数据库.在第二部分中,我使用Flask框架将信息显示为具有格式,样式等的h ...

  3. android打开wav格式,在Android中使用AudioTrack播放WAV文件

    我偶然发现了这个答案(坦白说,通过尝试& ^ @!我没有想到会工作),如果有人有兴趣-在我的原始代码(这是源自原始帖子中的链接的例子) ,数据从文件中读取如下: InputStream is ...

  4. b是python文件二进制打开_如何在Python中打开和显示原始二进制数据?

    'rb'模式允许您从Python中的文件读取原始二进制数据:with open(filename, 'rb') as file: raw_binary_data = file.read() type( ...

  5. android打开各种文件格式,笔记-Android中打开各种格式的文件(apk、word、excel、ppt、pdf、音视频、图片等)...

    打开后缀.apk的文件.即启动安装程序. //apkFilePath 文件路径 public void installAPK(String apkFilePath) { // 创建URI Uri ur ...

  6. js ...运算符_「 giao-js 」用js写一个js解释器

    前言 在这篇文章中,我们将通过 JS 构建我们自己的 JS 解释器,用 JS 写 JS,这听起来很奇怪,尽管如此,这样做我们将更熟悉 JS,也可以学习 JS 引擎是如何工作的! 什么是解释器 (Int ...

  7. bash脚本 文件_如何使用Bash脚本来管理从AWS S3存储桶下载和查看文件

    bash脚本 文件 As you can read in this article, I recently had some trouble with my email server and deci ...

  8. linux内核中打开文件 及属性控制

    共两篇文章:还可以参考linux那些事linx_sysfs ====================================================================== ...

  9. crx文件里面的html文件,javascript – Chrome扩展程序:在crx文件中打开html,标签上没有图标...

    您好我正在开发一个简单的chrome扩展,它通过在扩展名的.crx目录中打开index.html来替换当前的默认新标签页. 目前,新的标签页已经使用新的index.html页面进行了修改,但是标签上没 ...

最新文章

  1. android 音视频流采集,Android 音视频开发(四):使用 Camera API 采集视频数据(示例代码)...
  2. C语言中常用计时方法总结
  3. Python Django框架入门第一课
  4. 给Source Insight做个外挂系列之一--发现Source Insight
  5. MYSQL8 关键字(官方)
  6. SpringBoot(11)---特性_SpringApplication类(自定义Banner)
  7. layui table 表格两种赋值方式下,data分页效果有效, url分页效果的失效 问题的解决。
  8. ubuntu安装opencv的c++开发环境
  9. 86相似标准形07——若尔当(Jordan)标准形
  10. css按钮音效设置,带悬停音效(超低声波)的磁吸按钮
  11. 内网渗透之隐藏通信隧道技术
  12. TS2769: No overload matches this call.
  13. QQ微信域名防封 预防域名封禁 强制跳转至浏览器打开
  14. linux判断文件类型是否存在脚本,shell脚本中的逻辑判断 文件目录属性判断 if特殊用法 case判断...
  15. css定位-css新增选择器(内减,属性,伪类,2d变换,过渡)
  16. matlab画图五角星标记,Matlab---画图线型、符号及颜色
  17. 阿里云网盘开始内测资格申请!
  18. 最完整二叉树删除节点
  19. 十二.作业难点(有IT大牛路过的可以帮我解答我的疑问?万分感谢)--转行的苦逼人...
  20. 对QQ和搜狗拼音的期望 - 2010.6

热门文章

  1. 开发人员生产力指南,细节决定成败!
  2. 豪掷197亿美元!微软收购Siri背后的语音技术研发公司
  3. 揭秘 Python 火爆背后的真实现状,2020 Python 开发者调查
  4. 如何获取高质量 CV 训练数据?这个超详细上手教程不容错过
  5. 编程语言也有中年危机,Java 为何一直被唱衰?
  6. 谁决定了 IT 直男的价值
  7. 假如 C++ 是一只箭,你会用它来射哪只雕?
  8. 院士大咖齐聚苏州,共话AI未来,30个优秀个人和企业、产品受到表彰
  9. 你越努力,编程水平越差!这样学 Python ,更容易成为高手!
  10. 程序员踩坑之旅:将 75000 行 iOS 原生代码迁移到 Flutter!