Le contenu de mon Fichier CSV est disposé de façon suivante:
Mon objectif étant de:"#harmonicc_pos #harmonicc_val #pr_pos #pr_val #host_rev #n_hosts"
"1 2.9977668E7 1 0.020841439972937113 com.googleapis 2207"
"2 2.7867704E7 3 0.011812342801027227 com.facebook 5745"
"3 2.741998E7 2 0.012857445865476182 com.google 2950"
"4 2.519603E7 4 0.007273020531312286 com.twitter 1050"
"5 2.4558836E7 5 0.0064389191631340215 org.w 73"
"6 2.4533702E7 6 0.005983623364635486 com.youtube 2354"
"7 2.2592098E7 9 0.003798771953622204 com.instagram 659"
"8 2.206065E7 7 0.004856869480498758 org.gmpg 2"
"9 2.1829028E7 13 0.0028634510908277706 com.linkedin 657"
"10 2.1595446E7 8 0.004481096004418113 com.googletagmanager 26"
"11 2.093092E7 22 0.001704104008072028 com.gravatar 92"
"12 2.0912076E7 24 0.0015314568179524198 com.pinterest 270"
"13 2.07307E7 11 0.003384338372389061 com.cloudflare 370"
"14 2.0698732E7 17 0.002180298705930751 com.wordpress 7034608"
"15 2.061321E7 12 0.0030866221831772505 org.wordpress 2587"
"16 2.0607942E7 26 0.0012410666338201117 org.wikipedia 1720"
"17 2.0408594E7 14 0.002451586326769338 com.bootstrapcdn 42"
"18 2.035154E7 20 0.0018233612484132521 com.apple 3296"
"19 2.0148418E7 41 9.04397466958105E-4 com.blogspot 6580612"
- Récupérer que le contenu de la colonne #host_rev, c'est à dire UNIQUEMENT les Noms de Domaines inversés;
- Les modifier tous de façon correcte. Par exemple, tous les noms de domaine étant inversés (com.google, org.gmpg, com.facebook), il faudra les corriger normalement comme ceci: google.com, gmpg.org, facebook.com;
- Stocker le format correcte et non inversés sans l'entête #host_rev dans un nouveau fichier Text au format .txt
En effet, j'ai commencé d'abord à en extraire dans un tableau, la colonne #host_rev concernée en utilisant la fonction array_search avec mon Code ci-après:
Code : Tout sélectionner
<?php
$csv = array_map("str_getcsv", file("Sample200.csv"));
$header = array_shift($csv);
// Seperate the header from data
$array = [];
$col = array_search("#host_rev", $header, true);
foreach ($csv as $row) {
$array[] = $row[$col];
}
print_r($array);.Array ( [0] => 1 2.9977668E7 1 0.020841439972937113 com.googleapis 2207 [1] => 2 2.7867704E7 3 0.011812342801027227 com.facebook 5745 [2] => 3 2.741998E7 2 0.012857445865476182 com.google 2950 [3] => 4 2.519603E7 4 0.007273020531312286 com.twitter 1050 [4] => 5 2.4558836E7 5 0.0064389191631340215 org.w 73 [5] => 6 2.4533702E7 6 0.005983623364635486 com.youtube 2354 [6] => 7 2.2592098E7 9 0.003798771953622204 com.instagram 659 [7] => 8 2.206065E7 7 0.004856869480498758 org.gmpg 2 [8] => 9 2.1829028E7 13 0.0028634510908277706 com.linkedin 657 [9] => 10 2.1595446E7 8 0.004481096004418113 com.googletagmanager 26 [10] => 11 2.093092E7 22 0.001704104008072028 com.gravatar 92 [11] => 12 2.0912076E7 24 0.0015314568179524198 com.pinterest 270 [12] => 13 2.07307E7 11 0.003384338372389061 com.cloudflare 370 [13] => 14 2.0698732E7 17 0.002180298705930751 com.wordpress 7034608 [14] => 15 2.061321E7 12 0.0030866221831772505 org.wordpress 2587 [15] => 16 2.0607942E7 26 0.0012410666338201117 org.wikipedia 1720 [16] => 17 2.0408594E7 14 0.002451586326769338 com.bootstrapcdn 42 [17] => 18 2.035154E7 20 0.0018233612484132521 com.apple 3296 [18] => 19 2.0148418E7 41 9.04397466958105E-4 com.blogspot 6580612 )
Comment pourrais-je donc corriger mon code ci-dessus de sorte à récupérer seulement les noms de domaines inversés et les formater normalement pour qu'ils ne soient plus inversés et les stocker dans un fichier ".txt" ???