In foreach loop zelfde waardes filteren

Status
Niet open voor verdere reacties.

Breaky623

Gebruiker
Lid geworden
27 mei 2010
Berichten
85
Hallo,

Ik heb een evenementen systeem in wordpress als plugin. Het is een systeem waarbij je zelf evenementen kan toevoegen op datum, die komen dan in een lijst te staan. Als ik nou 2 evenementen op dezelfde datum zet zet hij er ook 2x het kopje datum tussen, dus dan krijg je bijv.

27 Augustus
bla bla event

27 Augustus
test event

2 September
tralala event

---------------------

Ik zou dan eigenlijk willen hebben

27 Augustus
bla bla event

test event

2 September
tralala event

---------------------

Dus dan lijkt mij de beste oplossing om op tekst te filteren en dus de waarde met dezelfde tekst (dezelfde datum) er dan uit te filteren.

Maar dan is mijn vraag hoe ik dat het beste kan doen in een foreach loop... hieronder staat mijn huidige code.

PHP:
function render_eventlist_events($events, $whitelabel, $limit) {
			usort($events, array($this, 'array_compare_order'));
			$rows = $this->convert_array_to_object($events);
			$out = '';
			foreach ($rows as $count => $row) {
				//if ($count < $limit) {
				if (!$limit || $count < $limit) {
				
					// split database formatted datetime value into display formatted date and time values
					$row->start_date	= $this->convert_date($row->start, AEC_DB_DATETIME_FORMAT, AEC_WP_DATE_FORMAT);
					$row->start_time 	= $this->convert_date($row->start, AEC_DB_DATETIME_FORMAT, AEC_WP_TIME_FORMAT);
					$row->end_date 		= $this->convert_date($row->end, AEC_DB_DATETIME_FORMAT, AEC_WP_DATE_FORMAT);
					$row->end_time 		= $this->convert_date($row->end, AEC_DB_DATETIME_FORMAT, AEC_WP_TIME_FORMAT);

					// link to event
					$class = ($whitelabel) ? '' : ' ' . $row->className;
					$out .= '<li class="fc-event round5' . $class . '">';
					$out .= '<span class="fc-event-time">';
					$out .= $row->start_date;

					if (!$row->allDay) {
						$out .= ' ' . $row->start_time;
					}
					$out .= '</span>';
					$out .= '<p class="fc-event-title"><a href="#" onClick="jQuery.aecDialog({\'id\':' . $row->id . ',\'start\':\'' . $row->start . '\',\'end\':\'' . $row->end . '\'});">' . $this->render_i18n_data($row->title) . '</a></p>';
					$out .= '</li>';
				}
			}
			return $out;
		}

dus "$row->start_date" zou ik dan moeten filteren.. iemand een idee of een betere oplossing?
 
ik weet niet waar je de waardes uit een database haalt maar daar zou je Distinct kunnen gebruiken.
die zorgt ervoor dat waardes maar 1 x voorkomen
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan