簡體   English   中英

如何搜索值以獲取鍵並使用該鍵獲取另一個數組中的另一個鍵?

[英]How can I search for value to get key and use that key to get another key in a different array?

我有一個帶有許多鍵和值的大型關聯數組,看起來像這樣。 我想搜索一個特定的值“經常”,並檢索具有該值的所有鍵。

$data = array(
'token' => 'token',
'content' => 'record',
'format' => 'json',
'type' => 'flat',
'records' => array($record),
'fields' => array(),
'returnFormat' => 'json'
);
 $ch = curl_init();
 curl_setopt($ch, CURLOPT_URL, 'url');
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
 curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
 curl_setopt($ch, CURLOPT_FRESH_CONNECT, 1);
 curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data, '', '&'));
$output = curl_exec($ch);
$row = json_decode($output, true);

foreach ($row[0] as $key => $value) {

              $first_array=array($variable_name=>$value);

              $often_variable=array_search("Often <br> (3)", $first_array);                 
          }

然后,我要使用第二個具有該鍵作為值的數組,並將該鍵的鍵輸出到表中。

  $objPHPExcel = PHPExcel_IOFactory::load("123.csv");

 foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) {
$worksheetTitle     = $worksheet->getTitle();
$highestRow         = $worksheet->getHighestRow(); // e.g. 10
$highestColumn      = $worksheet->getHighestColumn(); // e.g 'F'
$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
$nrColumns = ord($highestColumn) - 64;

for ($row2 = 2; $row2 <= $highestRow; ++ $row2) {
    $variable_name = $worksheet->getCellByColumnAndRow(0, $row2)->getValue();
    $field_label = $worksheet->getCellByColumnAndRow(4, $row2)->getValue();

    $second_array=array($field_label=>$variable_name)
}

我使用過array_search(),但不確定這是否是此用例的最佳選擇。

  foreach ($first_array as $var_name => $val){
    if ($value == "Often"){
      foreach ($second_array as $field_label => $variable_name){
         if ($variable_name == $var_name){
           echo "field_label: $field_label\n";
         };
      }
    }
  }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM