У меня есть строка, которая содержит несколько значений.Новая строка распознается как |условное обозначение.Значения между |принадлежат друг другу.
Теперь я пытаюсь, например, если IKK и Homo Sapiens присутствуют в строке, чтобы вернуть другие значения в этой строке (96, NC_000001, IKK, ингибитор ядерного фактора, IKK = IKKI).
Я использую функцию разнесения для разделения строк на основе |условное обозначение.Но если я снова использую функцию разнесения, теперь на основе символа.Я снова получил массив.Но если я сейчас буду искать homo sapiens & IKK и захочу вернуть другие значения из той же строки, я застряну.
У меня есть следующая строка:
$var = 'IKK ,Homo sapiens,96, NC_000001 , IKK , inhibitor of nuclear factor,
IKK = IKKI |GAL4 ,Saccharomyces cerevisiae,85588,NC_00114 , GAL4 ,0, GAL81
|TRP ,Influenza HA,0,0,0,0,0|TES,Influenza HA,5,0,TES,0,0';
Мой код:
function terms($result){
$result = (explode("|",$result));
$final = array_unique($result);
return $final;
}
$test = terms($var);
foreach ($test as $key => $value){
echo "key: $key -- value: $value"."<br \>\n";
$res = explode(",",$value);
foreach ($res as $v){
echo "tester: >> $v"."<br \>\n";
}
}
Я, вероятно, должен получить что-то подобное.Но я не нахожу способ добраться туда.Можно ли даже получить эту структуру?
if ($d[1] == "Homo sapiens" && $d[0] == "IKK"){
$k = $d[2] # 96
$s = $d[3] # NC_000001
}
В качестве конечного результата я хотел бы сохранить значения 96, NC_000001, IKK, ингибитор ядерного фактора, IKK = IKKI снова и снова отдельно в отдельной переменной,$ number = 96 $ acc = NC_000001