2016-05-15 3 views
1

ホテル内の外国人ゲストの警察を通報するunlファイルを生成する必要があります。 fwriteを調べましたが、カスタム拡張を設定できるかどうかはわかりません。ファイルが$name .unlである必要があります。以下は、ファイル構造、utf8とデータを分割するパイプです。fwrite - テキストファイルを作成しますが、拡張子を 'unl'に設定します

A|2|200500121222|VODPO|Hotel Pošta|Jan Sibelius, tel: 261 197 135|Strakonice|Vodňany|Vodňany I|Alešova|26||38901|2005.09.16 14:31:26|| 
U|01.10.2015|01.10.2015|Příjmení|Jméno||01.01.2000|||STP|bydliště|DOKLAD|VISUM|00|| 
U|01.10.2015|02.10.2015|ABDALLA|FAZUL||25.02.1974|||XXX|Kábul|321654|999|01|| 
U|01.10.2015|03.10.2015|ABDULLAH|MOHAMED||15.01.1977|||SYR|Damašek|987654|123|02|| 
U|01.10.2015|04.10.2015|AGOVIČ|MOHAMED||13.06.1970|||SCG|Noar|753159|321|03|| 
U|01.10.2015|05.10.2015|ANDĚL|JAN||01.01.1950|||BLZ|Brudé|159753|888|04|| 
U|01.10.2015|06.10.2015|HOHOS|KOKO||00.00.1950|||AFG|Kábul|123456|777|05|| 
U|01.10.2015|07.10.2015|SCHINDLER|BRUNO||00.00.2000|||DEU|Berlín|159753|666|06|| 

それはfwriteで可能でしょうか私は何か他のものを使用する必要がありますか?

+0

ファイルを 'fopen()'すると、PHPはどの拡張子を与えるのか気にしません。 '.unl'や' .txt'や '.xls'や拡張子は全くありません。 PHPに関しては、単なるファイル名であり、 'w'を使用する代わりに特別な意味を持たない –

答えて

1

あなたは次のように、fopenfwriteを使用していることを行うことができるはず:

<?php 
$data = 'Your data'; 
$file_name = $name.'.unl'; 
$file = fopen($file_name,"a"); 
echo fwrite($file,$data); 
fclose($file); 

fwrite以下fopenをお読みください。

fwrite

fopen

+0

は、後でファイルに余分なデータを追加するために 'a'を使用します。 –

+0

@ErikDohmenはそれを「a」に変更しました –

0

fwriteはリソースハンドルを取ります最初の議論。そのハンドルを取得するには、通常はfopenを呼び出します。最初の引数はファイル名で、2番目はモードです。次のように書いてください。有効なモードは、あなたはその後、fwriteのに使用するためのハンドルを取得するために、次の使用しますhttp://php.net/manual/en/function.fopen.php

に記載されています:

$ FP =のfopen($名「UNL」、「W」)を、

もっと良い方法があるかどうかについては、fputcsv(http://php.net/manual/en/function.fputcsv.php)を見て、|の区切り記号を使用してください。

関連する問題