2016-02-15 7 views
-1

У меня есть первый информационный стол:Как я могу отделить значение от разных массивов?

first

и второй:

second

В первой таблице можно увидеть # 005 имеет TC20151200730; # 008, # 009 есть TC20151200738.
Мне нужно показать id (# 005, # 008, # 009) во 2-й таблице, но если есть более одной записи, тогда идентификаторы будут склеиваться (2-й рис. Слева).

Как может отображаться как правая сторона второго рисунка?

foreach($jobSumID as $job) 
     { 
      $jobList=explode(";",$job); 

      if(in_array($row["ets_tcase_code"], $jobList)) 
      { 
       if(base_num_rows($getActionSQL)>1) 
        $date .="#".$jobList[0]."<br/>"; //show id 008,009    

       else 
        $date .="#".$jobList[0]."<br/>"; //show id 005 
      } 
     }      

хранить 1-ые данные ПИК в массив, так как идентификатор генерируют петли:

Array([0] => 001;TC20151200694 
     [1] => 002;TC20151200723 
     [2] => 003;TC20151200723 
     [3] => 004;TC20151200723 
     [4] => 005;TC20151200730 
     [5] => 006;TC20151200723 
     [6] => 007;TC20151200716 
     [7] => 008;TC20151200738 
     [8] => 009;TC20151200738 
    ) 

Благодарности

+0

сожалеем об этом, но я не в состоянии отправить изображение для Текущее состояние. –

+0

@Ravi Hirani Спасибо за редактирование. –

+0

Вы ищете что-то вроде соединения? –

ответ

1

Спасибо всем за помощь!
Я делаю свои данные многомерного массива:

Array ([TC20151200694] => 001 
     [TC20151200723] => Array ([0] => 002 [1] => 003 [2] => 004 [3] => 006) 
     [TC20151200730] => 005 
     [TC20151200716] => 007 
     [TC20151200738] => Array ([0] => 008 [1] => 009) 
    ) 

и ниже мой код, чтобы отобразить в правой части 2-го ПИК:

if(array_key_exists($row["ets_tcase_code"],$jobSumID)) 
{ 
    $test=""; 
    $j=0; 
    for($i=0;$i<sizeof($jobSumID);$i++) 
    { 
     if(is_array($jobSumID[$row["ets_tcase_code"]])) 
     { 
      if($j<sizeof($jobSumID[$row["ets_tcase_code"]])) 
       $date.="#".$jobSumID[$row["ets_tcase_code"]][0]."<br>"; 

      array_shift($jobSumID[$row["ets_tcase_code"]]); 
      break; 
     } 
     else 
     { 
      $date.="#".$jobSumID[$row["ets_tcase_code"]]."<br>"; 
      break; 
     } 
    } 
} 
0

Ваш пример кода ничего, но ясно. Вы также не предоставляете нам правильные данные для работы. Это, как говорится, то, что вы ищете что-то, что разделяет каждую запись в массиве на точку с запятой, используя explode и сохраняет эти данные в другом массиве, как показано ниже:

<?php 

// Example data to work with 
$array = array(
    '001;1', 
    '002;1', 
    '003;1', 
    '004;2', 
    '005;2', 
    '006;2', 
    '007;2', 
); 

$jobs = array(); 
foreach($array as $job) 
{ 
    $joblist = explode(';',$job); 
    $number = $joblist[0]; 
    $id = $joblist[1]; 

    // Let's store the gathered data in the $jobs array 
    $jobs[] = array(
     'number' => $number, 
     'id' => $id, 
    ); 
} 

// An example to output the data 
foreach($jobs as $v) 
{ 
    echo 'Job with number ' . $v['number'] . ' has id: ' . $v['id'] . "\n"; 
} 
+0

Спасибо, но я думаю, что это немного отличается от моего. Мой конечный результат должен указывать номер задания только 1 раз, а id будет отображаться отдельно как правая сторона во 2-м рис. –