Php 如何在一个查询中收集关于一个项目的所有结果

Php 如何在一个查询中收集关于一个项目的所有结果,php,api,loops,foreach,Php,Api,Loops,Foreach,我试图为我发送的货物创建一个php跟踪页面,我创建了一个html页面,将ajax查询发送到我的php文件,然后显示所有细节 我已经成功地获取了信息 但问题是,当我对运单编号进行循环时,它会以1的形式显示它们,这意味着 如果我有3张运单,就说[ 50003 , 3902 , 39499] 结果将是 id:50003,状态:已拾取, id:3902,状态:已拾取, id:39499,状态:已拾取, 那就是 id:50003,状态:左城市, id:3902,状态:左城市, id:39499,状态:左城

我试图为我发送的货物创建一个php跟踪页面,我创建了一个html页面,将ajax查询发送到我的php文件,然后显示所有细节 我已经成功地获取了信息 但问题是,当我对运单编号进行循环时,它会以1的形式显示它们,这意味着 如果我有3张运单,就说[ 50003 , 3902 , 39499] 结果将是 id:50003,状态:已拾取, id:3902,状态:已拾取, id:39499,状态:已拾取, 那就是 id:50003,状态:左城市, id:3902,状态:左城市, id:39499,状态:左城市, 等等 这是非常糟糕的

我需要它像: id:50003,状态1:已拾取,状态2:左侧城市:状态3:已交付,诸如此类

这是我的php:

<?php
 ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);


  $waybill2 = explode(PHP_EOL, $_POST['waybill']) ;

  $value = "<int>".implode('</int><int>', $waybill2)."</int>";

 $curl = curl_init();

  curl_setopt_array($curl,array(
    CURLOPT_URL => 'https://infotrack.naqelexpress.com/NaqelAPIServices/NaqelAPI/9.0/XMLShippingService.asmx?wsdl',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POSTFIELDS =>"<?xml version='1.0' encoding='utf-8'?>
  <soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>
    <soap:Body>
      <TraceByMultiWaybillNo xmlns='http://tempuri.org/'>
         <ClientInfo>
          <ClientAddress>
            <PhoneNumber>******</PhoneNumber>
            <FirstAddress>******</FirstAddress>
            <Location>******</Location>
            <CountryCode>******</CountryCode>
            <CityCode>******</CityCode>
          </ClientAddress>
          <ClientContact>
            <Name>zeyad</Name>
            <Email>******</Email>
            <PhoneNumber>******</PhoneNumber>
            <MobileNo>******</MobileNo>
          </ClientContact>
          <ClientID>******</ClientID>
          <Password>*****</Password>
          <Version>9.0</Version>
        </ClientInfo>
        <WaybillNo>
$value
        </WaybillNo>
      </TraceByMultiWaybillNo>
    </soap:Body>
  </soap:Envelope>
  ",
  
    CURLOPT_HTTPHEADER => array(
      'Content-Type: text/xml'
    ),
  ));
  
  $response = curl_exec($curl);

  curl_close($curl);
 $response = preg_replace("/(<\/?)(\w+):([^>]*>)/", "$1$2$3", $response);
$xml = new SimpleXMLElement($response);
$body = $xml->xpath('//soapBody')[0];
$array = json_decode(json_encode((array)$body), true); 

$data = $array['TraceByMultiWaybillNoResponse']['TraceByMultiWaybillNoResult']['Tracking'];



$waybils = array();
foreach ($data as $index => $val1) {
    echo "<pre>";
    $waybils[] = $val1['WaybillNo'];
    print_r($waybils);
    foreach( $waybils as $e ){
       echo $e . $val1['ArabicActivity']; 
    
    }
// echo $val1['WaybillNo']."  && ".$val1['ArabicActivity'] ;
echo "</pre>";
}

此代码的大部分内容与您的问题无关。我建议您阅读帮助中心关于创建一个应用程序的文章。您的问题的核心是
foreach($index=>data$val1)
,因此您应该只关注这一点。你应该给我们提供一个
$data
的示例,因为我们需要知道它的结构,以便找出哪里出了问题(并能够运行代码进行测试)。非常感谢你的友好回复,在发送本文之前,我真的尝试了所有方法,但都没有成功。。我编辑了这篇文章,并添加了outpot或$data arrayA小提示:最好使用
var\u export
print\u r
更易于阅读,但是
var\u export
的输出可以直接复制到编辑器中以重新创建变量。你能替换它吗?当然,我现在替换了它,正如你所看到的,它为每个运单创建了一个新的数组,我在想,是否有可能合并所有运单编号和ArabicActivity,使一个数组显示每个请求的所有数据
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">

<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
    <script src="scri.js" ></script>
</head>
<body>
    <div class="container">
        <div class="row">
            <h1>
                Type Here
            </h1>
           <form class="md-6" id="sds_contact_form">
            <div class="form-group">
                <label for="exampleFormControlTextarea1">Example textarea</label>
                <textarea class="form-control way" name="waybill" id="exampleFormControlTextarea1" rows="3"></textarea>
              </div>
              <div class="form-group mt-6">
                <input type="button" class="send" onClick="onClick()" value="submit" name="send"/>
            </div>
           </form> 
        </div>
        <div class="succ"></div>
    </div>
  <script>

    
    function onClick()
{
      var $waybill = $('.way').val();
      var myLineBreak = $waybill.replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '<br />');
      var succ = $('.succ');
    $.ajax({
        url:'g.php',
        type:'post',
        method:'post',
         data: {'waybill': $waybill},
       success: function(data){
           succ.html(data)
       },
         dataType: "json",
        error:function queryError(request, textStatus, errorThrown) {
    $('.succ').html("error " + request.responseText, textStatus + " " + errorThrown);
}
    });


}





     
  </script>
</body>
</html>
array (
  0 => 
  array (
    'StationCode' => 'Buraydah',
    'Date' => '2021-05-11T22:48:00',
    'ActivityCode' => '1',
    'Activity' => 'Picked Up at : Buraydah',
    'ArabicActivity' => 'تم إستلام الشحنة من الراسل : بريدة',
    'WaybillNo' => '52636025',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 
    array (
    ),
    'RefNo' => '41337_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '1',
  ),
  1 => 
  array (
    'StationCode' => 'Buraydah',
    'Date' => '2021-05-11T22:48:00',
    'ActivityCode' => '1',
    'Activity' => 'Picked Up at : Buraydah',
    'ArabicActivity' => 'تم إستلام الشحنة من الراسل : بريدة',
    'WaybillNo' => '52636027',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 
    array (
    ),
    'RefNo' => '41356_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '1',
  ),
  2 => 
  array (
    'StationCode' => 'Buraydah',
    'Date' => '2021-05-12T02:13:04.833',
    'ActivityCode' => '47',
    'Activity' => 'Miscode: Correct city',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636026',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 'JUBAIL(KSA)',
    'RefNo' => '41369_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  3 => 
  array (
    'StationCode' => 'Buraydah',
    'Date' => '2021-05-12T02:15:39.37',
    'ActivityCode' => '47',
    'Activity' => 'Miscode : Correct city : JEDDAH(KSA)',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636027',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 'JEDDAH(KSA)',
    'RefNo' => '41356_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  4 => 
  array (
    'StationCode' => 'Buraydah',
    'Date' => '2021-05-12T02:19:38.67',
    'ActivityCode' => '47',
    'Activity' => 'Miscode : Correct city : RIYADH(KSA)',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636025',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 'RIYADH(KSA)',
    'RefNo' => '41337_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  5 => 
  array (
    'StationCode' => 'Buraydah',
    'Date' => '2021-05-12T07:40:17.567',
    'ActivityCode' => '47',
    'Activity' => 'Terminal Handling',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636026',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 'ELQRUHHCBU27 - tripID - 31036',
    'RefNo' => '41369_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  6 => 
  array (
    'StationCode' => 'Buraydah',
    'Date' => '2021-05-12T07:40:18.22',
    'ActivityCode' => '47',
    'Activity' => 'Load to Trip : ELQRUHHCBU27 - tripID - 31036',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636025',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 'ELQRUHHCBU27 - tripID - 31036',
    'RefNo' => '41337_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  7 => 
  array (
    'StationCode' => 'Buraydah',
    'Date' => '2021-05-12T07:40:18.22',
    'ActivityCode' => '47',
    'Activity' => 'Load to Trip : ELQRUHHCBU27 - tripID - 31036',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636027',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 'ELQRUHHCBU27 - tripID - 31036',
    'RefNo' => '41356_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  8 => 
  array (
    'StationCode' => 'RIYADH',
    'Date' => '2021-05-12T14:43:33.587',
    'ActivityCode' => '47',
    'Activity' => 'Cons.Arrived at : Sort Facility - RIYADH - ELQRUHHCBU27 - tripID - 31036',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636025',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 'Sort Facility - RIYADH - ELQRUHHCBU27 - tripID - 31036',
    'RefNo' => '41337_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  9 => 
  array (
    'StationCode' => 'RIYADH',
    'Date' => '2021-05-12T14:43:34.067',
    'ActivityCode' => '47',
    'Activity' => 'Terminal Handling',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636026',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 'Sort Facility - RIYADH - ELQRUHHCBU27 - tripID - 31036',
    'RefNo' => '41369_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  10 => 
  array (
    'StationCode' => 'RIYADH',
    'Date' => '2021-05-12T14:43:34.133',
    'ActivityCode' => '47',
    'Activity' => 'Cons.Arrived at : Sort Facility - RIYADH - ELQRUHHCBU27 - tripID - 31036',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636027',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 'Sort Facility - RIYADH - ELQRUHHCBU27 - tripID - 31036',
    'RefNo' => '41356_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  11 => 
  array (
    'StationCode' => 'RIYADH',
    'Date' => '2021-05-12T14:45:55.877',
    'ActivityCode' => '47',
    'Activity' => 'Transit : Transit Facility',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636025',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 
    array (
    ),
    'RefNo' => '41337_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  12 => 
  array (
    'StationCode' => 'RIYADH',
    'Date' => '2021-05-12T14:45:55.877',
    'ActivityCode' => '47',
    'Activity' => 'Transit: Transit Facility',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636026',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 
    array (
    ),
    'RefNo' => '41369_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  13 => 
  array (
    'StationCode' => 'RIYADH',
    'Date' => '2021-05-12T14:45:55.877',
    'ActivityCode' => '47',
    'Activity' => 'Transit : Transit Facility',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636027',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 
    array (
    ),
    'RefNo' => '41356_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  14 => 
  array (
    'StationCode' => 'RIYADH',
    'Date' => '2021-05-13T00:08:10.397',
    'ActivityCode' => '47',
    'Activity' => 'Load to Trip : RUHTMM2 - tripID - 31076',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636025',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 'RUHTMM2 - tripID - 31076',
    'RefNo' => '41337_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  15 => 
  array (
    'StationCode' => 'RIYADH',
    'Date' => '2021-05-14T15:13:24.773',
    'ActivityCode' => '47',
    'Activity' => 'Terminal Handling',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636026',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 'RUHQJBFRI01 - tripID - 31082',
    'RefNo' => '41369_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
  16 => 
  array (
    'StationCode' => 'RIYADH',
    'Date' => '2021-05-14T16:44:00.457',
    'ActivityCode' => '47',
    'Activity' => 'Load to Trip : RUHJEDFRI - tripID - 31085',
    'ArabicActivity' => 'Terminal Handling',
    'WaybillNo' => '52636027',
    'ClientID' => '9020654',
    'HasError' => 'false',
    'ErrorMessage' => 
    array (
    ),
    'Comments' => 'RUHJEDFRI - tripID - 31085',
    'RefNo' => '41356_O_110521',
    'DeliveryStatusID' => '0',
    'EventCode' => '47',
  ),
)