我正在寫一個文本文件與PHP使用mysql數據庫字段,這是本質上的動態。我無法保持列寬完好無損,請參閱下面的數據和列以更好地瞭解我的意思。PHP使用動態數據從MYSQL問題創建文本文件
文本文件輸出:以上
450 65445 90900 87954 112
90900 45875 24565 15484 KA01 23232
php腳本:現在
$myFile = "testFile.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
if ($quer2[DCNO1]>0){fwrite($fh, str_pad($quer2[DCNO1],19, " ", STR_PAD_LEFT));} if ($quer2[DCNO2]>0) {fwrite($fh, str_pad($quer2[DCNO2],6, " ", STR_PAD_LEFT));} if ($quer2[DCNO3]>0) {fwrite($fh, str_pad($quer2[DCNO3],6, " ", STR_PAD_LEFT));} if ($quer2[DCNO4]>0) {fwrite($fh, str_pad($quer2[DCNO4],6, " ", STR_PAD_LEFT));}
fwrite($fh, str_pad($dchd2['PO_No'],13, " ", STR_PAD_LEFT));
$stringData = "\n";
fwrite($fh, $stringData);
if ($quer2[DCNO5]>0) {fwrite($fh, str_pad($quer2[DCNO5],19, " ", STR_PAD_LEFT));} if ($quer2[DCNO6]>0) {fwrite($fh, str_pad($quer2[DCNO6],6, " ", STR_PAD_LEFT));} if ($quer2[DCNO7]>0) {fwrite($fh, str_pad($quer2[DCNO7],6, " ", STR_PAD_LEFT));} if ($quer2[DCNO8]>0) {fwrite($fh, str_pad($quer2[DCNO8],6, " ", STR_PAD_LEFT));}
fwrite($fh, str_pad($dchd2['Vehicle_no'],20, " ", STR_PAD_LEFT));
$stringData = "\n";
fwrite($fh, $stringData);
fclose($fh);
如果列一個值是0,則空間變的,因爲我的IF條件去掉,在這樣的一種情況,我如何計算空間並給予這些額外的空間。
文本文件輸出,如果值中的一個在我的IF條件是0:
450 90900 112
90900 45875 24565 15484 KA01 23232
[嘗試這種] [1]
str_pad(「」,20);也工作正常,但嘗試聯繫也 [1]:http://stackoverflow.com/questions/10460298/how-to-write-fixed-width-text-file-with-php-and-mysql-data?answertab=active#頂部 – jayanthan