Multiplizieren Sie den Eintrag auf update_post_meta

Ich habe eine Metabox mit einem Array von Eingaben:




...

Und ich rette es so

 update_post_meta( $post_id, "dates", $_POST['activite_dates'] ); 

Das Problem ist, dass, wenn ich es abrufe, ich eine hässliche function machen muss, um mehrdimensionales Array zu lesen

 Array ( [0] => Array ( [0] => DATA1 [1] => DATA2 [2] => DATA3 [3] => DATA99 ) [1] => Array ( [0] => DATA1 [1] => DATA2 [2] => DATA3 [3] => DATA99 ) [2] => Array ( [0] => DATA1 [1] => DATA2 [2] => DATA3 [3] => DATA99 ) 

)

Und wenn ich es speichere, wird nur hinzugefügt, um an existierende Arrays anzuhängen

 Array ( [0] => Array ( [0] => DATA1 [1] => DATA2 [2] => DATA3 [3] => DATA99 [4] => DATA1 [5] => DATA2 [6] => DATA3 [7] => DATA99 ) [1] => Array ( [0] => DATA1 [1] => DATA2 [2] => DATA3 [3] => DATA99 [4] => DATA1 [5] => DATA2 [6] => DATA3 [7] => DATA99 ) [2] => Array ( [0] => DATA1 [1] => DATA2 [2] => DATA3 [3] => DATA99 [4] => DATA1 [5] => DATA2 [6] => DATA3 [7] => DATA99 ) ) 

Also, zuerst, warum habe ich 3 Wert auf der ersten Ebene, dann ist mein Array innerhalb der zweiten Ebene multipliziert?

Zur Information hier ist mein Code für die Ansicht:

 $dates_gf = get_post_meta( $object->ID, 'dates', false ); foreach ($dates_gf as $date_gf) { if (is_array($date_gf)){ foreach ($date_gf as $arr_date_gf) { ?> <input type="text" name="activite_dates_gf[]" value="" size="30" />
<input type="text" name="activite_dates_gf[]" value="" size="30" />

Vielen Dank !

Solutions Collecting From Web of "Multiplizieren Sie den Eintrag auf update_post_meta"

 < ?php // Check to make sure array is ready if( isset($_POST['activite_dates']) && is_array($_POST['activite_dates']) ) { // If we have an array ready to save delete all the previous data delete_post_meta( $post_id, "dates"); foreach($_POST['activite_dates'] as $date) { // Use add post meta instead of passing the array directly in add_post_meta( $post_id, "dates", esc_attr($date)); } } $dates_gf = get_post_meta( $object->ID, 'dates', false ); // No need for the is_array() check when using false for the $single variable. Check for empty() instead if(!empty($dates_gf)) { foreach($dates_gf as $date_gf) { ?> 
< ?php } } ?>