Word转PDF功能实现,文档转换工具通过PHP开发

最近比较火的文档转换工具相信大家都听说过,但是怎么实现呢?

通过该接口可以将图片、word、excel、ppt等文档转换为pdf格式的文件

1.可以将Office(Word,Excel,PowerPoint)文件转换为PDF。

2.转换文件内容、格式、页数等和原文件一致。 

实现代码如下:

开发工具 的参数填写,或者直接复制开发工具下面的测试代码。
    'key' => $API_KEY,
	'fileurl' => 'https://www.xxxx.com/文档转换工具.pdf',

);

//签名校验的 SK:(在用户控制台密钥管理的秘钥安全设置->签名校验 开启后才会生效,没开启签名校验留空即可。)
$sk = '1a78feda123123213213217f1ba3466ef';

/*发起请求API接口:
第1个参数:API接口地址URL,跟上面的同名变量相对应,无需更改。
第2个参数:API接口参数数组,跟上面的同名变量相对应,无需更改。
第3个参数:请求协议(GET或POST),一般默认GET,部分接口需要POST请求,根据实际情况修改为POST即可。
第4个参数:是否验证签名,true验证签名,否则false不验证签名,根据用户控制台 密钥管理 的 秘钥安全设置->签名校验 开启后才会生效,如没开启,填写fasle即可。
第5个参数:如果第4个参数开启验证签名,此处必须填写 SK ,跟上面的同名变量相对应,无需更改。
 */
$resdata = api::send($API_URL, $get_post_data, '选方法', true, $sk);  //发起请求,注意这里要选择接口支持的协议,默认GET,可选POST

//打印请求结果
print($resdata);
///你的业务代码可写在这里处理API返回的数据

/**
 * API请求类
 */
class api
{
    public static function send($API_URL, $get_post_data, $type, $ifsign, $sk)
    {
        $get_post_data = http_build_query($get_post_data);
        if ($ifsign) {
            $sign = md5($get_post_data . $sk);
            $res = self::send_curl($API_URL, $type, $get_post_data, $sign);
        } else {
            $res = self::send_curl($API_URL, $type, $get_post_data, null);
        }
        return $res;
    }
    //封装好的CURL请求函数,支持POST|GET
    public static function send_curl($API_URL, $type, $get_post_data, $sign)
    {
        $ch = curl_init();
        if ($type == 'POST') {
            curl_setopt($ch, CURLOPT_URL, $API_URL);
            curl_setopt($ch, CURLOPT_POST, true);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $get_post_data);
        } elseif ($type == 'GET') {
            curl_setopt($ch, CURLOPT_URL, $API_URL . '?' . $get_post_data);
        }
        if ($sign) {
            curl_setopt($ch, CURLOPT_HTTPHEADER, ['sign:' . $sign]);
        }
        curl_setopt($ch, CURLOPT_REFERER, $API_URL);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_TIMEOUT, 10);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        $resdata = curl_exec($ch);
        curl_close($ch);
        return $resdata;
    }
}

 提交成功后需查询成功状态,需要定时去轮训,我们建议最低5秒一次。

你可能感兴趣的:(php,http,开发语言)