Sto cercando di trovare un modo per lavorare con quelli che potrebbero essere array di grandi dimensioni. Quello che sto facendo è lavorare con l'API del grafico di facebook.PHP trova la chiave di indice dell'array multidimensionale per aggiornare l'array
Così, quando un utente si registra per un servizio che sto costruendo, memorizzo il loro ID di Facebook in una tabella del mio servizio. Il punto di questo è permettere a un utente che si iscrive al mio servizio di trovare amici dei propri che sono su Facebook e che hanno anche firmato il mio servizio per trovarsi l'un l'altro più facile.
Quello che sto cercando di fare è prendere l'oggetto che Facebook API restituisce per i dati /me/friends
e passarlo a una funzione che ho creato una query sul mio DB per gli ID trovati nei dati FB che funziona bene . Inoltre, mentre tutto questo bit è in corso, ho una serie di semplici ID di Facebook che possono essere utilizzati in uno scenario in_array
. Poiché la mia query restituisce solo l'ID di Facebook trovato corrispondente
Mentre questi dati si collegano da solo per creare la query, aggiorno anche l'oggetto per contenere un'altra coppia chiave/valore per articolo nell'elenco che è "are_friends"=> false
Fino a questo punto funziona tutto liscio e relativamente veloce, e ho i risultati della mia query. Che sto facendo il giro.
Quindi sono in una parte in cui voglio evitare di avere un ciclo all'interno di un ciclo. È qui che arriva il bit in_array()
. Da quando ho creato l'array di ID fc memorizzati ora posso passare in rassegna i miei risultati per vedere se c'è una corrispondenza, e in tal caso voglio prendere l'oggetto originale che ho aggiunto 'are_friends'=>false
a e modificare quelli in quel set che corrispondono a "true" invece di false. Non riesco a pensare a un buon modo senza fare il ciclo sull'array originale all'interno del loop che è l'array dei risultati.
quindi spero che qualcuno possa aiutarmi a venire con una soluzione di qui senza quel ciclo secondario
L'array fino a questo punto che inizia come gli sguardi originali come
Array(
[data](
[0] => array(
are_fb_friends => false
name => user name
id => 1000
)
[1] => array(
are_fb_friends => false
name => user name
id => 2000
)
[2] => array(
are_fb_friends => false
name => user name
id => 3000
)
)
)
Come per richiesta
Questa è la mia logica codice corrente, che sto cercando di descrivere sopra ..
puoi pubblicare il tuo codice corrente a doppio loop, non riesco a capire perfettamente quello che ti serve –
modificato il mio post per riflettere anche il codice – chris