private function export2csv()
 {
     $arrUser = $this->loadUserlist();
     $objCsv = new class_csv(";");
     $objCsv->setArrMapping(array($this->getLang("userlistName"), $this->getLang("userlistForename"), $this->getLang("userlistEmail"), $this->getLang("userlistStreet"), $this->getLang("userlistPostal"), $this->getLang("userlistCity"), $this->getLang("userlistPhone"), $this->getLang("userlistMobile"), $this->getLang("userlistBirthday")));
     $arrCsvValues = array();
     foreach ($arrUser as $objOneUser) {
         $objTargetUser = $objOneUser->getObjSourceUser();
         if ($objTargetUser instanceof class_usersources_user_kajona) {
             $arrRow = array();
             $arrRow[] = $objTargetUser->getStrName();
             $arrRow[] = $objTargetUser->getStrForename();
             $arrRow[] = $objTargetUser->getStrEmail();
             $arrRow[] = $objTargetUser->getStrStreet();
             $arrRow[] = $objTargetUser->getStrPostal();
             $arrRow[] = $objTargetUser->getStrCity();
             $arrRow[] = $objTargetUser->getStrTel();
             $arrRow[] = $objTargetUser->getStrMobile();
             $arrRow[] = uniStrlen($objTargetUser->getLongDate()) > 5 ? dateToString(new class_date($objTargetUser->getLongDate()), false) : "";
             $arrCsvValues[] = $arrRow;
         }
     }
     $objCsv->setArrData($arrCsvValues);
     $objCsv->setStrFilename("userlist.csv");
     $objCsv->writeArrayToFile(true);
 }
Example #2
0
 public function test()
 {
     echo "\ttesting class_csv...\n";
     //test code
     $strFile = "/files/public/testCsv.csv";
     $arrValues = array(array("v11", "v21", "v31"), array("v12", "v22", "v32"), array("v13", "v23", "v33"), array("v14", "v24", "v34"), array("v15", "v25", "v35"));
     $objCsv = new class_csv();
     $objCsv->setArrData($arrValues);
     $objCsv->setArrMapping(array(0 => "c1", 1 => "c2", 2 => "c3"));
     //write to file
     $objCsv->setStrFilename($strFile);
     $this->assertTrue($objCsv->writeArrayToFile(), __FILE__ . " checkCsvWriteArrayToFile");
     //read from file
     $objCsv = new class_csv();
     $objCsv->setArrMapping(array("c1" => 0, "c2" => 1, "c3" => 2));
     $objCsv->setStrFilename($strFile);
     $this->assertTrue($objCsv->createArrayFromFile(), __FILE__ . " checkCsvCreateArrayFromFileReader");
     $arrValuesFromCsv = $objCsv->getArrData();
     $this->assertEquals(count(array_diff($arrValues[0], $arrValuesFromCsv[0])), 0, __FILE__ . " checkCsvCreateArrayFromFile");
     $this->assertEquals(count(array_diff($arrValues[1], $arrValuesFromCsv[1])), 0, __FILE__ . " checkCsvCreateArrayFromFile");
     $this->assertEquals(count(array_diff($arrValues[2], $arrValuesFromCsv[2])), 0, __FILE__ . " checkCsvCreateArrayFromFile");
     $this->assertEquals(count(array_diff($arrValues[3], $arrValuesFromCsv[3])), 0, __FILE__ . " checkCsvCreateArrayFromFile");
     $this->assertEquals(count(array_diff($arrValues[4], $arrValuesFromCsv[4])), 0, __FILE__ . " checkCsvCreateArrayFromFile");
     //test with set encloser
     $objCsv = new class_csv();
     $objCsv->setArrData($arrValues);
     $objCsv->setTextEncloser("'");
     $objCsv->setArrMapping(array(0 => "c1", 1 => "c2", 2 => "c3"));
     //write to file
     $objCsv->setStrFilename($strFile);
     $this->assertTrue($objCsv->writeArrayToFile(), __FILE__ . " checkCsvEncloserWriteArrayToFile");
     //read from file
     $objCsv = new class_csv();
     $objCsv->setArrMapping(array("c1" => 0, "c2" => 1, "c3" => 2));
     $objCsv->setTextEncloser("'");
     $objCsv->setStrFilename($strFile);
     $this->assertTrue($objCsv->createArrayFromFile(), __FILE__ . " checkCsvEncloserCreateArrayFromFileReader");
     $arrValuesFromCsv = $objCsv->getArrData();
     $this->assertEquals(count(array_diff($arrValues[0], $arrValuesFromCsv[0])), 0, __FILE__ . " checkCsvEncloserCreateArrayFromFile");
     $this->assertEquals(count(array_diff($arrValues[1], $arrValuesFromCsv[1])), 0, __FILE__ . " checkCsvEncloserCreateArrayFromFile");
     $this->assertEquals(count(array_diff($arrValues[2], $arrValuesFromCsv[2])), 0, __FILE__ . " checkCsvEncloserCreateArrayFromFile");
     $this->assertEquals(count(array_diff($arrValues[3], $arrValuesFromCsv[3])), 0, __FILE__ . " checkCsvEncloserCreateArrayFromFile");
     $this->assertEquals(count(array_diff($arrValues[4], $arrValuesFromCsv[4])), 0, __FILE__ . " checkCsvEncloserCreateArrayFromFile");
     echo "\tsaved generated CSV file to <a href=\"" . _webpath_ . $strFile . "\">" . _webpath_ . $strFile . "</a>\n";
 }