У меня есть вопрос, касающийся массива php ..
У меня есть массив, который имеет Икс количество значений в конце массива ..
Например, массив будет
[1] => 'Hello'
[2] => Value1, Value2, Value3
[3] => Value1, Value2, Value3
[4] => Value1, Value2, Value3
[5] => 'Good Bye'
или же
[1] => 'Hello'
[2] => Value1, Value2, Value3
[3] => Value1, Value2, Value3
[4] => Value1, Value2, Value3
[5] => Value1, Value2, Value3
[6] => Value1, Value2, Value3
[7] => Value1, Value2, Value3
[8] => 'Good Bye'
или это может быть
[1] => 'Hello'
[2] => Value1, Value2, Value3
[3] => 'Good Bye'
Вот что я хочу сделать, я хочу отобразить значение массива от элемента 2 до элемента массива, содержащего до свидания.
Как бы я поступил так?
Спасибо,
Я не уверен насчет вопроса, [2] => Value1, Value2, Value3
массив или строка, где значения разделены запятыми?
Кроме того, печатая [2] перед последним, вы в основном просто печатаете их по порядку.
$array = array (
1 => 'Hello',
2 => array('Value1', 'Value2', 'Value3'),
3 => array('Value1', 'Value2', 'Value3'),
4 => array('Value1', 'Value2', 'Value3'),
5 => 'Good Bye'
);
foreach ($array as $key => $value) {
if (is_array($value)===true) {
foreach ($value as $invalue) {
if (is_string($invalue)===true) {
echo $invalue.", ";
} else {
echo 'Error? Throw Exception or something';
}
}
echo "<br />";
// or explode by , if the Value is string
} elseif (is_string($value)===true) {
echo $value."<br />";
} else {
echo 'Error? Throw Exception or something';
}
}
Если вы хотите напечатать их каким-либо другим способом, сохраните выходные данные перед их распечаткой, вы объедините текущую строку с входным результатом и отобразите ее в конце.
$result = "";
foreach (..) {
$result .= $current;
}
echo $result;
Неважно, я нашел свое решение. Я использовал функцию array_walk.