/ Published in: PHP
Mail merge allows you to produce document (potentially large numbers of documents) from a single template and a structured data source. The letter may be sent out to many recipients with small changes, such as a change of address or a change in the greeting line. It can also be used to generate business reports, purchase orders, receipts, catalogs, inventories, and invoices etc.
Aspose.Words for Cloud Mail Merge allows you to generate documents from a template and XML in any language including .NET, Java, PHP, Ruby, Rails, Python, jQuery and many more. You can use it with any language or platform that supports REST. (Almost all platforms and languages support REST and provide native REST clients to work with REST API).
This post covers mail merge in PHP, you can check Aspose.Words for Cloud documentation for other languages.
http://www.aspose.com/docs/display/wordscloud/Working+with+Mail+Merge
Aspose.Words for Cloud Mail Merge allows you to generate documents from a template and XML in any language including .NET, Java, PHP, Ruby, Rails, Python, jQuery and many more. You can use it with any language or platform that supports REST. (Almost all platforms and languages support REST and provide native REST clients to work with REST API).
This post covers mail merge in PHP, you can check Aspose.Words for Cloud documentation for other languages.
http://www.aspose.com/docs/display/wordscloud/Working+with+Mail+Merge
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
Mail Merge using PHP REST /**** Section 1 ****/ // Build URI to execute mail merge $strURI = 'http://api.aspose.com/v1.1/words/Sample.docx/executeMailMerge?withRegions=true&mailMergeDataFile=Data.xml'; // Use the following URI if you want to remove EmptyParagraphs,UnusedRegions,UnusedFields and ContainingFields during mail merge // $strURI = 'http://api.aspose.com/v1.1/words/Sample.docx/executeMailMerge?mailMergeDataFile=Data.xml&cleanup=EmptyParagraphs,UnusedRegions,UnusedFields,ContainingFields'; /**** End Section 1 ****/ /**** Section 2 ****/ $appSID = "77****-****-****-****-80*********"; $appKey = "****************"; // Sign URI $signedURI = Sign($strURI, $appSID, $appKey); /**** End Section 2 ****/ /**** Section 3 ****/ $responseStream = ProcessCommand($signedURI, "POST", "", ""); /**** End Section 3 ****/ /**** Section 4 ****/ //build URI to download output DOC $outputFileName = $json->Document->FileName; /**** End Section 4 ****/ Mail Merge using PHP SDK /**** Section 1 ****/ // Specify product URI Product::$baseProductUri = "http://api.aspose.com/v1.1"; //sepcify App SID AsposeApp::$appSID = "xxxxxxxxxxxxxxxxxxxxxxxx"; //sepcify App Key AsposeApp::$appKey = "xxxxxxxxxxxxxxxxxxxxxxxx"; /**** End Section 1 ****/ try{ /**** Section 2 ****/ AsposeApp::$outPutLocation = getcwd() . "/Output/"; $mainDocumentFile = getcwd() . "/Input/SimpleMerge.doc"; $mainDocument = basename($mainDocumentFile); $xml = simplexml_load_file(getcwd() . "/Input/SimpleMerge.xml"); /**** End Section 2 ****/ /**** Section 3 ****/ //upload main document echo "Uploading main document...<br />"; $folder = new Folder(); $folder->uploadFile($mainDocumentFile, ""); echo "Main document uploaded <br />"; /**** End Section 3 ****/ /**** Section 4 ****/ echo "Executing mail merge... <br />"; //create MailMerge object $doc = new MailMerge(); $result = $doc->executeMailMerge($mainDocument, $xml->asXML()); /**** End Section 4 ****/ } catch (Exception $e) { throw new Exception($e->getMessage()); }