Knowband Blog | Ecommerce Modules

Export PHP data to .xls file

Dane to dowolny zestaw znaków, który jest tłumaczony w jakimś celu, na przykład do analizy. Może to być dowolny znak lub wartość, w tym tekst i liczby, obrazy, dźwięk lub wideo. Jeśli dane nie są umieszczone w kontekście, nie robią nic dla człowieka ani maszyny. Generalnie eksportujemy dane ze stron internetowych, aby zapisać je na komputerze do użytku offline, np. do przechowywania danych list i ich analizy. Excel to najlepszy format do eksportowania danych w pliku, ponieważ czytanie dużych plików w programie Excel jest znacznie łatwiejsze dla użytkownika. Możesz także użyć dodatkowych funkcji, takich jak wybieranie poszczególnych komórek do importowania danych, automatyczne konwertowanie dat i czasu, filtry, sortowanie, czytanie formuł i ich wyników itp.


Na tym blogu dowiemy się, jak krok po kroku eksportować dane PHP do pliku .xls. Za pomocą prostego skryptu PHP możesz wyeksportować dane do Excela i pobrać je w pliku .xls.

KROK 1: Utwórz tablicę do przechowywania danych

Utworzyłem tablicę ($customers_data) do przechowywania danych klientów. Możesz stworzyć własną tablicę zgodnie z wymaganiami:

$customers_data = array( array( 'customers_id' => '1', 'customers_firstname' => 'Chris', 'customers_lastname' => 'Cavagin', 'customers_email' => 'chriscavagin@gmail.com', 'customers_telephone => '9911223388' ), array( 'customers_id' => '2', 'customers_firstname' => 'Richard', 'customers_lastname' => 'Simmons', 'customers_email' => 'rsimmons@media.com', ' customers_telephone' => '9911224455' ), array( 'customers_id' => '3', 'customers_firstname' => 'Steve', 'customers_lastname' => 'Beaven', 'customers_email' => 'ateavebeaven@gmail.com' , 'customers_telephone' => '8855223388' ), array( 'customers_id' => '4', 'customers_firstname' => 'Howard', 'customers_lastname' => 'Rawson', 'customers_email' => 'howardraw@gmail'. com', 'customers_telephone' => '9911334488' ), array( 'customers_id' => '5', 'customers_firstname' => 'Rachel', 'customers_lastname' => 'Dyson', 'customers_email' => 'racheldy gmail.com', 'customers_telephone' => '9912345388' ) );

KROK 2: Utwórz funkcję do filtrowania danych:

Ta funkcja służy do wykrywania podwójnych cudzysłowów i zmiany znaczenia każdej wartości, która je zawiera. Bez tego nieparzysta liczba cudzysłowów w ciągu może zmylić program Excel.

// Filtruj dane klienta function filterCustomerData(&$str) { $str = preg_replace("/\t/", "\\t", $str); $str = preg_replace("/\r?\n/", "\\n", $str); if(strstr($str, '"')) $str = ''"' . str_replace('"', '""', $str) '"'; }

KROK 3: Zdefiniuj nazwę pliku i nagłówek zawartości do pobrania:

$file_name�zmienna służy do przechowywania nazwy pliku, a także definiowania nagłówka treści do pobrania.

// Nazwa pliku i nagłówek zawartości do pobrania $file_name = "customers_data.xls"; header("Dyspozycja zawartości: załącznik; nazwa pliku=\"$nazwa_pliku\""); header("Typ treści: aplikacja/vnd.ms-excel");

KROK 4: Zdefiniuj pętlę przez każdy wiersz w� $customers_data

//Aby zdefiniować nazwę kolumny w pierwszym wierszu. $nazwy_kolumn = fałsz; // uruchom pętlę przez każdy wiersz w $customers_data foreach($customers_data as $row) { if(!$column_names) { echo implode("\t", array_keys($row)) . "\n"; $nazwy_kolumn = prawda; } // Funkcja array_walk() uruchamia każdy element tablicy w funkcji zdefiniowanej przez użytkownika. array_walk($wiersz, 'filterCustomerData'); echo implode("\t", array_values($row)) . "\n"; } Wyjście;

1. Zdefiniuj zmienną $column_names, która służy do drukowania nazwy kolumny w pierwszym wierszu programu Excel. 2. Uruchom pętlę przez każdy wiersz i użyj funkcji array_walk()�, aby uruchomić każdy wiersz w funkcji zdefiniowanej przez użytkownika.

KROK 5: Uruchom plik skryptu w swoim środowisku:

Jeśli wszystko pójdzie dobrze, nazwa pliku zostanie pobrana i zapisana na komputerze o nazwie „dane_klientów.xls”. Możesz otworzyć ten plik w programie Excel, który wygląda następująco:

Kliknij tutaj aby pobrać cały kod.