2015-10-17 1 views
-3

я хочу взрывать несколько массив в PHP Для примераКак взорвать несколько массивов в php?

$day[] = array (1,2,3,4,5); 
$month[] = array (1,2,3,4,5); 
$year[] = array (2001,2002,2003,2004,2005); 
$date = implode(";",$day."/".$month."/".$year); 

Я ожидаю выход является

1/1/2001, 2/2/2002, 3/3/2003; 4/4/2004; 5/5/2005

Возможно ли, Фактически пробовал и не работал. может помочь мне решить эту проблему.

+0

Это называется петлей, добро пожаловать к программированию. Но ваш код неисправен, так как вы создаете многомерные массивы. Прочтите руководство [implode] (http://php.net/implode), чтобы узнать, какие аргументы он принимает. – Devon

ответ

3

Код ниже создает массив с внутренним форматом, который вы хотите, а затем его разлагаете. Обратите внимание, что этот код предполагает, что номер элемента каждого массива равен. Также убедитесь, что значения не будут иметь разделителей, например / или ;.

$day[] = array (1,2,3,4,5); 
$month[] = array (1,2,3,4,5); 
$year[] = array (2001,2002,2003,2004,2005); 
$arr = array(); 
for ($index = 0; $index < count($day); $index++) { 
    $arr[$index] = $month[$index]."/".$day[$index]."/".$year[$index]; 
} 
$result = implode(";", $arr); 
2

попробовать это

$dates = array(); 
foreach ($day as $key => $val) { 
    $dates[] = $day[$key]."/".$month[$key]."/".$year[$key]; 
} 
$allDates = implode(";",$dates); 
+0

Syed, таким образом вы только эхом отдаете результат. У вас будет; в конце, который явно отличается от формата оп. Кроме того, op может захотеть использовать результат в другом месте, но ваш код предполагает, что результат будет отображаться только в эхом. Это предположение преждевременно, так как op не имеет эха в своем коде. –

 Смежные вопросы

  • Нет связанных вопросов^_^