<?php 
 
/* Test for Excel.php: A class for use with PHP4 scripts only*/
 
 
 
/*
 
 * This is a test file for Excel class to create,load,read,write,save and use some of the 
 
 * internal functionalities of workbooks and sheets.
 
 * Tested with Windows 98 - MS Office 2000
 
 * Apache 1.3.9 PHP4.02 Running as CGI
 
 * (c) Alain M. Samoun 09/2000.
 
 * [email protected]
 
 * Gnu GPL code (see www.fsf.org for more information ).
 
 */
 
 
 
 /* Set up files and directories for the test. Change as you wish.*/
 
 
 
 # Put the include file in your php include directory
 
    require ("excel.php");
 
 # Put the test.xls file in the C:\My Documents\ directory
 
    $workbook = "test.xls";
 
    $pathin = "C:\\My Documents\\";
 
    $sheet = "test";
 
    $pathout = "c:\\My Documents\\"; #The directory to save your files
 
 
 /* Instantiate Excel and open the test file. */
 
 
 #Instantiate Excel
 
        $E = new Excel;
 
 
 #Open the workbook
 
        $E->XL($workbook,$pathin,$sheet); 
 
        Print "Test starting..<br>";
 
 
        
 
 /* Read the content of a cell or range of cells */
 
 
  # Read the A1 cell
 
        Print "The content of cell A1 is: ". $E->readrange($sheet,"A1")."<br>";
 
    
 
  # Read the content of cells A1,A2,A3,A4
 
        $content = $E->readrange($sheet,"A1:A4");
 
        if (is_array($content))
 
        {
 
            $count = sizeof($content);
 
            for ($num=0; $num<$count; $num++)
 
            {
 
                $num2=$num+1;
 
                   print "Got Cell A$num2 Content = ". $content[$num] . "<br>";
 
               }
 
        }
 
    
 
 /* Write to a cell or range of cells  */
 
 
 
  # Change the content of cell A1
 
        $E->writerange($sheet,"A1","New content");
 
  # Read the new content  
 
        Print "The content of cell A1 now is: ". $E->readrange($sheet,"A1")."<br>";
 
    
 
  # Write an array of numbers to the cells B1,C1,D1,E1
 
        $array = array("1","2","3","4");
 
        $E->writerange($sheet,"B1:E1",$array);
 
  # Read the new content for the range:
 
        $content = $E->readrange($sheet,"B1:E1");
 
       if (is_array($content))
 
        {
 
        $count = sizeof($content);
 
        for ($num=0; $num<$count; $num++)
 
        {
 
            $letter= chr(66+$num);
 
               print "Set cell $letter"."1 Content= ". $content[$num] . "<br>";
 
           }
 
        }
 
    
 
    
 
 /* Write a formula in cell B3  */
 
 
 
        $E->writerange($sheet,"B3",'=SUM(B1..E1)');
 
  # Read the B3 content  
 
        Print "The content of cell B3=SUM(B1..D1) is: ". $E->readrange($sheet,"B3")."<br>";
 
 
 /* Execute a macro */
 
 
 
 #The following will run the macro Macro2 that will put a string on cell D6
 
 #content of cell D6 before macro
 
     Print"Cell D6 before macro:". $E->readrange($sheet,"D6")." <br>";
 
     $E->runmacro($workbook,"Macro2");
 
 #Read the macro result:
 
     $result = $E->readrange($sheet,"D6");
 
     print "Cell D6 content after running Macro2 = $result <br>"; 
 
    
 
 /* Read the result of a build-in excel function */
 
 
 #Example: PMT financial function
 
     $arrayparam = array("0.08/12","10","10000"); 
 
     $result = $E->runfunction("PMT",$arrayparam);
 
     print "<br>Financial function PMT result using the \"run function \" method: ".sprintf("%.2f",$result);
 
 
 
 /* Convert all files in a directory */
 
/* (Uncoment to run this part)
 
 #File to convert from extension "xls" to extension "csv"
 
     if ($E->XLTranslate($pathin,$pathout,"xls","csv",0))
 
     {
 
         print "<br>All 'xls' files in $pathin have been converted to 'csv files in $pathout.<br>";
 
     }
 
*/ 
 
 /* Save the workbook */     
 
 
 #Save the current workbook as a quattro pro file:
 
     $E->saveas($workbook,$pathout,"WQ1");
 
     print "<br> $workbook has been saved as a WQ1 file. <br>";
 
 
 /* Close workbook  and exit excel */
 
     $E->closexl();
 
     unset ($E);
 
 
 
 /* Start a new instance of excel with a new workbook */ 
 
         $E = new Excel;
 
        $E->XL("",$pathin,"sheet1"); #Note the empty name for workbook
 
        Print "<br>Starting a new workbook<br>";
 
  # Write something in cell A1
 
        $E->writerange("sheet1","A1","Cell A1 in the new workbook");
 
  # Read the new content  
 
        Print "The content of cell A1 in the new workbook is: ". $E->readrange("sheet1","A1")."<br>";
 
  # Save the new workbook as an xls file
 
      $E->saveas("newwkb",$pathout,"xls");
 
  # And close it
 
      $E->closexl();
 
         unset ($E);
 
 
 
     echo "<br> Test finished!";
 
 
 
?>
 
 |