Advertisement
Guest User

Untitled

a guest
Mar 29th, 2017
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.86 KB | None | 0 0
  1. <pre>
  2. <?php
  3. function rus2translit($string) {
  4.     $converter = array(
  5.         'а' => 'a',   'б' => 'b',   'в' => 'v',
  6.         'г' => 'g',   'д' => 'd',   'е' => 'e',
  7.         'ё' => 'e',   'ж' => 'zh',  'з' => 'z',
  8.         'и' => 'i',   'й' => 'y',   'к' => 'k',
  9.         'л' => 'l',   'м' => 'm',   'н' => 'n',
  10.         'о' => 'o',   'п' => 'p',   'р' => 'r',
  11.         'с' => 's',   'т' => 't',   'у' => 'u',
  12.         'ф' => 'f',   'х' => 'h',   'ц' => 'c',
  13.         'ч' => 'ch',  'ш' => 'sh',  'щ' => 'sch',
  14.         'ь' => '\'',  'ы' => 'y',   'ъ' => '\'',
  15.         'э' => 'e',   'ю' => 'yu',  'я' => 'ya',
  16.         ' ' => '-', '       ' => '-',
  17.        
  18.         'А' => 'A',   'Б' => 'B',   'В' => 'V',
  19.         'Г' => 'G',   'Д' => 'D',   'Е' => 'E',
  20.         'Ё' => 'E',   'Ж' => 'Zh',  'З' => 'Z',
  21.         'И' => 'I',   'Й' => 'Y',   'К' => 'K',
  22.         'Л' => 'L',   'М' => 'M',   'Н' => 'N',
  23.         'О' => 'O',   'П' => 'P',   'Р' => 'R',
  24.         'С' => 'S',   'Т' => 'T',   'У' => 'U',
  25.         'Ф' => 'F',   'Х' => 'H',   'Ц' => 'C',
  26.         'Ч' => 'Ch',  'Ш' => 'Sh',  'Щ' => 'Sch',
  27.         'Ь' => '\'',  'Ы' => 'Y',   'Ъ' => '\'',
  28.         'Э' => 'E',   'Ю' => 'Yu',  'Я' => 'Ya',
  29.     );
  30.        
  31.     return strtr($string, $converter);
  32. }
  33.   $massiv = array();
  34. try {
  35.     $dbh = new PDO('mysql:host=naibecar.beget.tech;dbname=naibecar_dev', 'naibecar_dev', 'qwertyq');
  36.     foreach($dbh->query('SELECT * from placement_copy') as $row) {
  37.        $perebor = $row;
  38.       //print_r($perebor);
  39.       //print_r(json_decode($perebor['price']));
  40.       $properties = json_decode($perebor['prop']);
  41.       $prices = json_decode($perebor['price']);
  42.       print_r();
  43.         $url = rus2translit($perebor['name']);
  44.         $summa = preg_replace("/[^0-9]/", '', $prices[2]);
  45.         $price = preg_replace("/[^0-9]/", '', $prices[1]);
  46. $newdata = array(
  47. 0   =>  "",
  48. 1   =>  $perebor['name'],
  49. 2   =>  "",
  50. 3   =>  "Y",
  51. 4   =>  "",
  52. 5   =>  "",
  53. 6   =>  "",
  54. 7   =>  "",
  55. 8   =>  "text",
  56. 9   =>  "",
  57. 10  =>  $perebor['description'],
  58. 11  =>  "text",
  59. 12  =>  $url,
  60. 13  =>  500,
  61. 14  =>  "",
  62. 15  =>  $summa,
  63. 16  =>  $properties->{'Общая площадь'},
  64. 17  =>  $price,
  65. 18  =>  "",
  66. 19  =>  "",
  67. 20  =>  "",
  68. 21  =>  "",
  69. 22  =>  $perebor['adress'],
  70. 23  =>  "",
  71. 24  =>  "",
  72. 25  =>  "",
  73. 26  =>  "",
  74. 27  =>  "",
  75. 28  =>  "",
  76. 29  =>  "",
  77. 30  =>  "",
  78. 31  =>  "",
  79. 32  =>  $properties->{'Инфраструктура'},
  80. 33  =>  "",
  81. 34  =>  "",
  82. 35  =>  "",
  83. 36  =>  "",
  84. 37  =>  "",
  85. 38  =>  $perebor['id_building'],
  86. 39  =>  "",
  87. 40  =>  "",
  88. 41  =>  "",
  89. 42  =>  $properties->{'Парковка'},
  90. 43  =>  "",
  91. 44  =>  "",
  92. 45  =>  "",
  93. 46  =>  "",
  94. 47  =>  $properties->{'Система вентиляции'},
  95. 48  =>  $properties->{'Система кондиционирования'},
  96. 49  =>  $properties->{'Система пожаротушения'},
  97. 50  =>  "",
  98. 51  =>  "",
  99. 52  =>  "",
  100. 53  =>  "",
  101. 54  =>  "",
  102. 55  =>  "",
  103. );
  104. $datamass[] = $newdata;
  105.     }
  106.  
  107.  
  108.  
  109.  $dbh = null;
  110. } catch (PDOException $e) {
  111.     print "Error!: " . $e->getMessage() . "<br/>";
  112.     echo "test1";
  113.     die();
  114. }
  115.  
  116. class CSV {
  117.  
  118.     private $_csv_file = null;
  119.  
  120.     /**
  121.      * @param string $csv_file  - путь до csv-файла
  122.      */
  123.     public function __construct($csv_file) {
  124.         if (file_exists($csv_file)) { //Если файл существует
  125.             $this->_csv_file = $csv_file; //Записываем путь к файлу в переменную
  126.         }
  127.         else { //Если файл не найден то вызываем исключение
  128.             throw new Exception("Файл $csv_file не найден");
  129.         }
  130.     }
  131.  
  132.     public function setCSV(Array $csv) {
  133.         //Открываем csv для до-записи,
  134.         //если указать w, то  ифнормация которая была в csv будет затерта
  135.         $handle = fopen($this->_csv_file, "a");
  136.  
  137.         foreach ($csv as $value) { //Проходим массив
  138.             //Записываем, 3-ий параметр - разделитель поля
  139.             fputcsv($handle, $value, ";");
  140.         }
  141.         fclose($handle); //Закрываем
  142.     }
  143.    
  144.  
  145.     /**
  146.      * Метод для чтения из csv-файла. Возвращает массив с данными из csv
  147.      * @return array;
  148.      */
  149.     public function getCSV() {
  150.         $handle = fopen($this->_csv_file, "r"); //Открываем csv для чтения
  151.  
  152.         $array_line_full = array();
  153.         while (($line = fgetcsv($handle, 0, ";")) !== FALSE) {
  154.             $array_line_full[] = $line;
  155.         }
  156.         fclose($handle);
  157.         return $array_line_full;
  158.     }
  159.  
  160. }
  161.  
  162. try {
  163.     $csv = new CSV("export_file.csv"); //Открываем наш csv
  164.     $csv->setCSV($datamass);
  165.  
  166.  
  167. }
  168. catch (Exception $e) { //Если csv файл не существует, выводим сообщение
  169.     echo "Ошибка: " . $e->getMessage();
  170. }
  171. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement