Php veya mysql komutları - mysql arkaya gelen veriler metin dosyası içine

2 Cevap php

Nasıl metin dosyaları içine ihraç mysql tablosundan bir satırda tüm verileri almak, ancak bu şekilde biçimlendirilmiş yapın:

  • diğerinin altına alan, her satıra bir tane
  • i parçalar halinde bu verileri kırmak ister ve örneğin file1.txt 50 satırları daha sonra sonraki file2.txt 50 ve böylece sonuna kadar tasarruf (yuvarlak bir sayı değil bu yüzden son dosya muhtemelen daha az çizgiler olurdu) olurdu
  • özdeş girdilerini kopyalamak yok / kaldır çiftleri

... Php komut dosyası ya da sadece mysql konsolunu kullanarak?

2 Cevap

Ben komut satırı istemcisi kullanıyorsanız, bu şekilde yapmak olabilir:

$ mysql --user=XXX --password=XXX --batch --skip-column-names \
  -e "SELECT userid, displayname FROM Users" stackoverflowdb | \
split -l 50 -a 5 - "result."

Ben halklar ödev / işi nefret ediyorum, ama bu sadece çok kolaydır.

	<?

	$row = mysql_fetch_array($rc);

	$nodupes = array();
	foreach ($row as $field)
	{
		$nodupes[$field] = $field;
	}

	$i = 1;
	$filenum = 0;
	$line = 50 ; // create new file ever 50 lines
            $text = "";
	foreach($nodupes as $field)
	{
		$i++;
		$text .= "$field\n";

		// to split into bite size peices
		if ($i % $line == 0)
		{
			$filenum++;
			$filename = "myfile_$filenum.txt";
			file_put_contents($filename,$text);
			$text = "";
		}
	}
	$filenum++;
	$filename = "myfile_$filenum.txt";
	file_put_contents($filename,$text);
	?>

Yani bugün yemek, ve başka bir gün balık öğrenmek!