Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Экспорт в CSV. Вставить данные - каждый в своём столбце. / PHP
Форумы портала PHP.SU » » Вопросы новичков » Экспорт в CSV. Вставить данные - каждый в своём столбце. / PHP

Страниц (1): [1]
 

1. dreamfactor - 24 Марта, 2014 - 16:07:33 - перейти к сообщению
у меня есть название столбцов, как вывести значения именно под теми столбцами под которыми они должны быть
PHP:
скопировать код в буфер обмена
  1.  
  2. $columns_names = array(
  3.             'company'=>         'Company',
  4.             'name'=>             'Name',
  5.             'email'=>            'E-mail'
  6.            
  7.             );
  8. $column_delimiter = ';';
  9.  
  10. $users = $this->users->get_users();
  11.         foreach($users as $user)
  12.         {
  13.             fputcsv($f, $user, $this->column_delimiter);
  14.         }
  15.  
  16.         fclose($f);
2. difight - 24 Марта, 2014 - 16:11:05 - перейти к сообщению
вначале определить позицию столбцов по названию и потом по позиции вставлять
3. dreamfactor - 24 Марта, 2014 - 16:16:54 - перейти к сообщению
так а как это кодом сделать ?
4. difight - 24 Марта, 2014 - 16:18:16 - перейти к сообщению
я так искал

поиск слова в массиве, если найдено возвращает его ключ, ключ у меня его позиция
5. dreamfactor - 24 Марта, 2014 - 16:21:44 - перейти к сообщению
если честно не очень понял
6. Исильдур - 24 Марта, 2014 - 19:54:10 - перейти к сообщению
Думаю суть понятна.
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $columns_names = array(
  4.     'company' => 'Company',
  5.     'name' => 'Name',
  6.     'email' => 'E-mail'
  7. );
  8. $column_delimiter = ';';
  9.  
  10. $users = array(
  11.     array('Company Name', 'User Name', 'Email'),
  12.     array('Company Name', 'User Name', 'Email'),
  13.     array('Company Name', 'User Name', 'Email'),
  14. );
  15. $f = fopen('file.csv', 'w');
  16. fputcsv($f, $columns_names, $column_delimiter);
  17. foreach ($users as $user)
  18. {
  19.     fputcsv($f, $user, $column_delimiter);
  20. }
  21.  
  22. fclose($f);
7. dreamfactor - 24 Марта, 2014 - 21:47:54 - перейти к сообщению
Исильдур пишет:
Думаю суть понятна.
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $columns_names = array(
  4.     'company' => 'Company',
  5.     'name' => 'Name',
  6.     'email' => 'E-mail'
  7. );
  8. $column_delimiter = ';';
  9.  
  10. $users = array(
  11.     array('Company Name', 'User Name', 'Email'),
  12.     array('Company Name', 'User Name', 'Email'),
  13.     array('Company Name', 'User Name', 'Email'),
  14. );
  15. $f = fopen('file.csv', 'w');
  16. fputcsv($f, $columns_names, $column_delimiter);
  17. foreach ($users as $user)
  18. {
  19.     fputcsv($f, $user, $column_delimiter);
  20. }
  21.  
  22. fclose($f);

так записывает все данные в 1 столбец
8. Исильдур - 24 Марта, 2014 - 21:51:08 - перейти к сообщению
dreamfactor пишет:
так записывает все данные в 1 столбец

Мне отсюда не видно что у вас
возвращает.
Сделайте
PHP:
скопировать код в буфер обмена
  1. $users = $this->users->get_users();
  2. var_dump($users); exit;

Результат сюда.

 

Powered by ExBB FM 1.0 RC1