![](/img/trans.png)
[英]How to import the column value as comma from mysql data to csv file using php
[英]How to dynamically get column value from csv file using php
我在 csv 文件名和电话中有两列。 如果我将电话号码作为变量$searchStr = "6059574150";
它必须在 csv 文件中找到号码,我需要该联系人姓名才能像这样动态访问 $data['Name'] 而不是 $data['0'] MY php 代码
$header = array();
$final_result = array();
$file = fopen('example.csv', 'r');
if($file){
$row = 1;
while ($data = fgetcsv($file, 10000, ",")){
if($row == 1){
$header = array_values($data);
}
else{
$final_result[] = array_combine($header, array_values($data));
}
$row++;
}
}
echo "<pre>";
print_r($final_result);
我的 output 是这样的
Array
(
[0] => Array
(
[Names] => MICHAEL
[Phone] => 6059342614
)
[1] => Array
(
[Names] => GLENN
[Phone] => 6056296061
)
)
如何直接访问列? 像这样 $data['Name']
如果电话号码是唯一的,您可以执行以下操作:
<?php
$final_result = array();
$file = fopen('example.csv', 'r');
if($file) {
$header = fgetcsv($file, 10000, ",");
while ($data = fgetcsv($file, 10000, ",")) {
$final_result[$data[1]] = $data[0];
}
}
?>
如果每个电话号码有多个姓名(人),则可以将它们连接起来$final_result[$data[1]].= ','. $data[0];
$final_result[$data[1]].= ','. $data[0];
.
示例结果:
array (
phone1 => 'name1',
phone2 => 'name2',
phone3 => 'name3',
)
要从电话号码中搜索姓名,您必须执行以下操作: $final_result[phone_number]
并获得姓名。
在您的 output 数组“$final_result”中,您可以通过以下方式通过电话号码查找名称:
$foundKey = array_search('pone_number_to_search', array_column($final_result, "Phone"));
$foundNames = $final_result[$foundKey]["Names"];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.