php5 creating tab delimited csv file problem

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
ianhull
Forum Contributor
Posts: 310
Joined: Tue Jun 14, 2005 10:04 am
Location: Hull England UK

php5 creating tab delimited csv file problem

Post by ianhull »

Hi guys, I am having a little trouble creating a tab delimited file from php.

The headers are not seperated using

Code: Select all

\t
not sure why

here is my code

Code: Select all

<?php

$tabSplit = '\t';
$tabLines = '\n';
$data = 'Action(CC=Cp1252)'.$tabSplit.
'SiteID'.$tabSplit.
'Format'.$tabSplit.
'Title'.$tabSplit.
'SubTitle'.$tabSplit.
'Custom Label'.$tabSplit.
'Category'.$tabSplit.
'Category2'.$tabSplit.
'StoreCategory'.$tabSplit.
'StoreCategory2'.$tabSplit.
'Quantity'.$tabSplit.
'LotSize'.$tabSplit.
'Currency'.$tabSplit.
'StartPrice'.$tabSplit.
'BuyItNowPrice'.$tabSplit.
'ReservePrice'.$tabSplit.
'InsuranceOption'.$tabSplit.
'InsuranceFee'.$tabSplit.
'DomesticInsuranceOption'.$tabSplit.
'DomesticInsuranceFee'.$tabSplit.
'PackagingHandlingCosts'.$tabSplit.
'InternationalPackagingHandlingCosts'.$tabSplit.
'Duration'.$tabSplit.
'PrivateAuction'.$tabSplit.
'Country'.$tabSplit.
'ProductIDType'.$tabSplit.
'ProductIDValue'.$tabSplit.
'ItemID'.$tabSplit.
'Description'.$tabSplit.
'Counter'.$tabSplit.
'PicURL'.$tabSplit.
'BoldTitle'.$tabSplit.
'Featured'.$tabSplit.
'GalleryType'.$tabSplit.
'Highlight'.$tabSplit.
'Border'.$tabSplit.
'HomePageFeatured'.$tabSplit.
'Subtitle in search resutls'.$tabSplit.
'GiftIcon'.$tabSplit.
'GiftExpressShipping'.$tabSplit.
'GiftShipToRecipient'.$tabSplit.
'GiftWrap'.$tabSplit.
'SalesTaxPercent'.$tabSplit.
'SalesTaxState'.$tabSplit.
'ShippingInTax'.$tabSplit.
'UseTaxTable'.$tabSplit.
'PostalCode'.$tabSplit.
'ApplyShippingDiscount'.$tabSplit.
'ProxyItem'.$tabSplit.
'VATPercent'.$tabSplit.
'Location'.$tabSplit.
'NowandNew'.$tabSplit.
'ImmediatePayRequired'.$tabSplit.
'PayPalAccepted'.$tabSplit.
'PayPalEmailAddress'.$tabSplit.
'PaymentInstructions'.$tabSplit.
'CashOnPickupAccepted'.$tabSplit.
'CCAccepted'.$tabSplit.
'AmEx'.$tabSplit.
'Discover'.$tabSplit.
'VisaMastercard'.$tabSplit.
'COD'.$tabSplit.
'CODPrePayDelivery'.$tabSplit.
'PostalTransfer'.$tabSplit.
'MOCashiers'.$tabSplit.
'PersonalCheck'.$tabSplit.
'MoneyXferAccepted'.$tabSplit.
'MoneyXferAcceptedinCheckout'.$tabSplit.
'PaymentOther'.$tabSplit.
'OtherOnlinePayments'.$tabSplit.
'PaymentSeeDescription'.$tabSplit.
'Escrow'.$tabSplit.
'ShippingType'.$tabSplit.
'InternationalShippingType'.$tabSplit.
'ShipFromZipCode'.$tabSplit.
'ShippingIrregular'.$tabSplit.
'ShippingPackage'.$tabSplit.
'WeightMajor'.$tabSplit.
'WeightMinor'.$tabSplit.
'WeightUnit'.$tabSplit.
'MeasurementUnit'.$tabSplit.
'PackageDimension'.$tabSplit.
'CharityID'.$tabSplit.
'CharityName'.$tabSplit.
'DonationPercentage'.$tabSplit.
'ShippingService-1:Option'.$tabSplit.
'ShippingService-1:Cost'.$tabSplit.
'ShippingService-1:AdditionalCost'.$tabSplit.
'ShippingService-1:Priority'.$tabSplit.
'ShippingService-1:AddSurcharge'.$tabSplit.
'ShippingService-1:SurchargeVal'.$tabSplit.
'ShippingService-2:Option'.$tabSplit.
'ShippingService-2:Cost'.$tabSplit.
'ShippingService-2:AdditionalCost'.$tabSplit.
'ShippingService-2:Priority'.$tabSplit.
'ShippingService-2:AddSurcharge'.$tabSplit.
'ShippingService-2:SurchargeVal'.$tabSplit.
'ShippingService-3:Option'.$tabSplit.
'ShippingService-3:Cost'.$tabSplit.
'ShippingService-3:AdditionalCost'.$tabSplit.
'ShippingService-3:Priority'.$tabSplit.
'ShippingService-3:AddSurcharge'.$tabSplit.
'ShippingService-3:SurchargeVal'.$tabSplit.
'ShippingService-4:Option'.$tabSplit.
'ShippingService-4:Cost'.$tabSplit.
'ShippingService-4:AdditionalCost'.$tabSplit.
'ShippingService-4:Priority'.$tabSplit.
'ShippingService-4:AddSurcharge'.$tabSplit.
'ShippingService-4:SurchargeVal'.$tabSplit.
'ShippingService-5:Option'.$tabSplit.
'ShippingService-5:Cost'.$tabSplit.
'ShippingService-5:AdditionalCost'.$tabSplit.
'ShippingService-5:Priority'.$tabSplit.
'ShippingService-5:AddSurcharge'.$tabSplit.
'ShippingService-5:SurchargeVal'.$tabSplit.
'GetItFast'.$tabSplit.
'DispatchTimeMax'.$tabSplit.
'IntlShippingService-1:Option'.$tabSplit.
'IntlShippingService-1:Cost'.$tabSplit.
'IntlShippingService-1:AdditionalCost'.$tabSplit.
'IntlShippingService-1:Locations'.$tabSplit.
'IntlShippingService-1:Priority'.$tabSplit.
'IntlShippingService-2:Option'.$tabSplit.
'IntlShippingService-2:Cost'.$tabSplit.
'IntlShippingService-2:AdditionalCost'.$tabSplit.
'IntlShippingService-2:Locations'.$tabSplit.
'IntlShippingService-2:Priority'.$tabSplit.
'IntlShippingService-3:Option'.$tabSplit.
'IntlShippingService-3:Cost'.$tabSplit.
'IntlShippingService-3:AdditionalCost'.$tabSplit.
'IntlShippingService-3:Locations'.$tabSplit.
'IntlShippingService-3:Priority'.$tabSplit.
'IntlShippingService-4:Option'.$tabSplit.
'IntlShippingService-4:Cost'.$tabSplit.
'IntlShippingService-4:AdditionalCost'.$tabSplit.
'IntlShippingService-4:Locations'.$tabSplit.
'IntlShippingService-4:Priority'.$tabSplit.
'IntlShippingService-5:Option'.$tabSplit.
'IntlShippingService-5:Cost'.$tabSplit.
'IntlShippingService-5:AdditionalCost'.$tabSplit.
'IntlShippingService-5:Locations'.$tabSplit.
'IntlShippingService-5:Priority'.$tabSplit.
'IntlAddnlShiptoLocations'.$tabSplit.
'PaisaPayAccepted'.$tabSplit.
'PaisaPay EMI payment'.$tabSplit.
'DigitalDeliveryDetails.Method'.$tabSplit.
'DigitalDeliveryDetails.Requirements'.$tabSplit.
'DigitalDeliveryDetails.Instructions'.$tabSplit.
'DigitalDeliveryDetails.URL'.$tabSplit.
'BasicUpgradePackBundle'.$tabSplit.
'ValuePackBundle'.$tabSplit.
'ProPackPlusBundle'.$tabSplit.
'BestOffer'.$tabSplit.
'AutoAccept'.$tabSplit.
'BestOfferAutoAcceptPrice'.$tabSplit.
'AutoDecline'.$tabSplit.
'MinBestOfferPrice'.$tabSplit.
'BestOfferRejectMessage'.$tabSplit.
'LocalOnlyChk'.$tabSplit.
'LocalListingDistance'.$tabSplit.
'SkypeChat'.$tabSplit.
'SkypeVoice'.$tabSplit.
'SkypeName'.$tabSplit.
'SkypeEnabled'.$tabSplit.
'SkypeOption'.$tabSplit.
'SkypeID'.$tabSplit.
'ShipToRegistrationCountry'.$tabSplit.
'ZeroFeedbackScore'.$tabSplit.
'MinimumFeedbackScore'.$tabSplit.
'MaximumUnpaidItemStrikes'.$tabSplit.
'MaximumItemCount'.$tabSplit.
'MaximumItemMinimumFeedbackScore'.$tabSplit.
'LinkedPayPalAccount'.$tabSplit.
'VerifiedUser'.$tabSplit.
'VerifiedUserMinimumFeedbackScore'.$tabSplit.
'ContactPrimaryPhone'.$tabSplit.
'ContactSecondaryPhone'.$tabSplit.
'LocationInfo'.$tabSplit.
'ProStores Name'.$tabSplit.
'ProStores Enabled'.$tabSplit.
'Domestic Profile Discount'.$tabSplit.
'International Profile Discount'.$tabSplit.
'Apply Profile Domestic'.$tabSplit.
'Apply Profile International'.$tabSplit.
'A:Returns Accepted'.$tabSplit.
'A:Item must be returned within:'.$tabSplit.
'A:Return policy details'.$tabSplit.
'A:Type'.$tabSplit.
'A:Main Colour'.$tabSplit.
'A:Size'.$tabSplit.
'A:Style'.$tabSplit.
'A:Material'.$tabSplit.
'A:Condition'.$tabLines;

$fp = fopen('123.csv',"a"); // $fp is now the file pointer to file $filename
if($fp){
    fwrite($fp,$data);    //    Write information to the file
    fclose($fp);  //    Close the file
    echo "File saved successfully";
} else {
    echo "Error saving file!";
}?>
and here is the csv file when opened in excel

Code: Select all

Action(CC=Cp1252)\tSiteID\tFormat\tTitle\tSubTitle\tCustom Label\tCategory\tCategory2\tStoreCategory\tStoreCategory2\tQuantity\tLotSize\tCurrency\tStartPrice\tBuyItNowPrice\tReservePrice\tInsuranceOption\tInsuranceFee\tDomesticInsuranceOption\tDomesticInsuranceFee\tPackagingHandlingCosts\tInternationalPackagingHandlingCosts\tDuration\tPrivateAuction\tCountry\tProductIDType\tProductIDValue\tItemID\tDescription\tCounter\tPicURL\tBoldTitle\tFeatured\tGalleryType\tHighlight\tBorder\tHomePageFeatured\tSubtitle in search resutls\tGiftIcon\tGiftExpressShipping\tGiftShipToRecipient\tGiftWrap\tSalesTaxPercent\tSalesTaxState\tShippingInTax\tUseTaxTable\tPostalCode\tApplyShippingDiscount\tProxyItem\tVATPercent\tLocation\tNowandNew\tImmediatePayRequired\tPayPalAccepted\tPayPalEmailAddress\tPaymentInstructions\tCashOnPickupAccepted\tCCAccepted\tAmEx\tDiscover\tVisaMastercard\tCOD\tCODPrePayDelivery\tPostalTransfer\tMOCashiers\tPersonalCheck\tMoneyXferAccepted\tMoneyXferAcceptedinCheckout\tPaymentOther\tOtherOnlinePayments\tPaymentSeeDescription\tEscrow\tShippingType\tInternationalShippingType\tShipFromZipCode\tShippingIrregular\tShippingPackage\tWeightMajor\tWeightMinor\tWeightUnit\tMeasurementUnit\tPackageDimension\tCharityID\tCharityName\tDonationPercentage\tShippingService-1:Option\tShippingService-1:Cost\tShippingService-1:AdditionalCost\tShippingService-1:Priority\tShippingService-1:AddSurcharge\tShippingService-1:SurchargeVal\tShippingService-2:Option\tShippingService-2:Cost\tShippingService-2:AdditionalCost\tShippingService-2:Priority\tShippingService-2:AddSurcharge\tShippingService-2:SurchargeVal\tShippingService-3:Option\tShippingService-3:Cost\tShippingService-3:AdditionalCost\tShippingService-3:Priority\tShippingService-3:AddSurcharge\tShippingService-3:SurchargeVal\tShippingService-4:Option\tShippingService-4:Cost\tShippingService-4:AdditionalCost\tShippingService-4:Priority\tShippingService-4:AddSurcharge\tShippingService-4:SurchargeVal\tShippingService-5:Option\tShippingService-5:Cost\tShippingService-5:AdditionalCost\tShippingService-5:Priority\tShippingService-5:AddSurcharge\tShippingService-5:SurchargeVal\tGetItFast\tDispatchTimeMax\tIntlShippingService-1:Option\tIntlShippingService-1:Cost\tIntlShippingService-1:AdditionalCost\tIntlShippingService-1:Locations\tIntlShippingService-1:Priority\tIntlShippingService-2:Option\tIntlShippingService-2:Cost\tIntlShippingService-2:AdditionalCost\tIntlShippingService-2:Locations\tIntlShippingService-2:Priority\tIntlShippingService-3:Option\tIntlShippingService-3:Cost\tIntlShippingService-3:AdditionalCost\tIntlShippingService-3:Locations\tIntlShippingService-3:Priority\tIntlShippingService-4:Option\tIntlShippingService-4:Cost\tIntlShippingService-4:AdditionalCost\tIntlShippingService-4:Locations\tIntlShippingService-4:Priority\tIntlShippingService-5:Option\tIntlShippingService-5:Cost\tIntlShippingService-5:AdditionalCost\tIntlShippingService-5:Locations\tIntlShippingService-5:Priority\tIntlAddnlShiptoLocations\tPaisaPayAccepted\tPaisaPay EMI payment\tDigitalDeliveryDetails.Method\tDigitalDeliveryDetails.Requirements\tDigitalDeliveryDetails.Instructions\tDigitalDeliveryDetails.URL\tBasicUpgradePackBundle\tValuePackBundle\tProPackPlusBundle\tBestOffer\tAutoAccept\tBestOfferAutoAcceptPrice\tAutoDecline\tMinBestOfferPrice\tBestOfferRejectMessage\tLocalOnlyChk\tLocalListingDistance\tSkypeChat\tSkypeVoice\tSkypeName\tSkypeEnabled\tSkypeOption\tSkypeID\tShipToRegistrationCountry\tZeroFeedbackScore\tMinimumFeedbackScore\tMaximumUnpaidItemStrikes\tMaximumItemCount\tMaximumItemMinimumFeedbackScore\tLinkedPayPalAccount\tVerifiedUser\tVerifiedUserMinimumFeedbackScore\tContactPrimaryPhone\tContactSecondaryPhone\tLocationInfo\tProStores Name\tProStores Enabled\tDomestic Profile Discount\tInternational Profile Discount\tApply Profile Domestic\tApply Profile International\tA:Returns Accepted\tA:Item must be returned within:\tA:Return policy details\tA:Type\tA:Main Colour\tA:Size\tA:Style\tA:Material\tA:Condition\n

ay help greatley appreciated
ianhull
Forum Contributor
Posts: 310
Joined: Tue Jun 14, 2005 10:04 am
Location: Hull England UK

Re: php5 creating tab delimited csv file problem

Post by ianhull »

No worries, i managed to do it with comaa seperated.

thanks anyway
User avatar
RobertGonzalez
Site Administrator
Posts: 14293
Joined: Tue Sep 09, 2003 6:04 pm
Location: Fremont, CA, USA

Re: php5 creating tab delimited csv file problem

Post by RobertGonzalez »

When using character like \n or \t you must wrap them in double quotes ("\t") rather than single quotes ('\t') because PHP will parse the double quotes but will treat the single quote as a string literal.
Post Reply