Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- require_once('app/Mage.php');
- umask(0);
- if (!Mage::isInstalled()) {
- echo "Application is not installed yet, please complete install wizard first.";
- exit;
- }
- // Only for urls // Don't remove this
- $_SERVER['SCRIPT_NAME'] = str_replace(basename(__FILE__), 'index.php', $_SERVER['SCRIPT_NAME']);
- $_SERVER['SCRIPT_FILENAME'] = str_replace(basename(__FILE__), 'index.php', $_SERVER['SCRIPT_FILENAME']);
- Mage::app('admin')->setUseSessionInUrl(false);
- Mage::setIsDeveloperMode(true); ini_set('display_errors', 1); error_reporting(E_ALL);
- try {
- Mage::getConfig()->init();
- Mage::app();
- } catch (Exception $e) {
- Mage::printException($e);
- }
- ini_set('memory_limit','500M');
- $customerCount = 0;
- try{
- //configure the collection filters.
- $collection = Mage::getResourceModel('customer/customer_collection')
- ->addAttributeToSelect('entity_id')
- ->addAttributeToSelect('firstname');
- //Add a page size to the result set.
- $collection->setPageSize(50);
- //discover how many page the result will be.
- $pages = $collection->getLastPageNumber();
- $currentPage = 1;
- //This is the file to append the output to.
- $fp = fopen('customers.csv', 'w');
- $addedKeys = false;
- do{
- //Tell the collection which page to load.
- $collection->setCurPage($currentPage);
- $collection->load();
- foreach ($collection as $customer){
- //write the collection array as a CSV.
- $customerArray = $customer->toArray();
- $customerREquiredArray['customer ID'] = $customerArray['entity_id'];
- $customerREquiredArray['First name'] = $customerArray['firstname'];
- if($addedKeys == false){
- $keys = array_keys($customerREquiredArray);
- fputcsv($fp, $keys);
- $addedKeys = true;
- }
- //var_dump($customerArray); echo "nn";
- fputcsv($fp, $customerREquiredArray);
- //fwrite($fp,print_r($customerArray,true) . chr(10) );
- $customerCount++;
- }
- $currentPage++;
- //make the collection unload the data in memory so it will pick up the next page when load() is called.
- $collection->clear();
- //break; //DEBUG
- echo "Finished page $currentPage of $pages n";
- } while ($currentPage <= $pages);
- fclose($fp);
- } catch (Exception $e) {
- //$response['error'] = $e->getMessage();
- Mage::printException($e);
- }
- echo "Saved $customerCount customers to csv file n";
Add Comment
Please, Sign In to add comment