Προς το περιεχόμενο
  • 0
Συνδεθείτε  
Swinrrr

PHP array list

Ερώτηση

Καλή σας μέρα , υπάρχει στο php κάτι παρόμοιο με ArrayList() της JAVA . Ενα πρόβλημα εχω να λύσω

, θέλω να εισαγω τιμές μέσα στην λίστα και κάθε τιμή που θα μπαίνει μεσα θέλω να κάνει έλεγχο αν είναι μέσα στην λίστα .Τι τρόπος υπάρχει;

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

3 απαντήσεις σε αυτή την ερώτηση

Προτεινόμενες αναρτήσεις

  • 0

Στην PHP δεν είναι ανάγκη να ορίσεις μέγεθος της array. Αν θέλεις να κάνεις κάτι τέτοιο μπορείς να χρησιμοποιήσεις την SplFixedArray (αλλά δεν βρίσκω τον λόγο). Όσο βάζεις στοιχεία μέσα στην array τόσο αυτή θα μεγαλώνει και το αντίστροφο. Στην PHP οι arrays είναι στην πραγματικότητα ordered maps. Αν κάνω λάθος ας με διορθώσει κάποιος.

 

Έλεγχο για το αν μια τιμή είναι σε μια array μπορείς να κάνεις με την in_array (http://php.net/manual/en/function.in-array.php).

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

Στην PHP δεν είναι ανάγκη να ορίσεις μέγεθος της array. Αν θέλεις να κάνεις κάτι τέτοιο μπορείς να χρησιμοποιήσεις την SplFixedArray (αλλά δεν βρίσκω τον λόγο). Όσο βάζεις στοιχεία μέσα στην array τόσο αυτή θα μεγαλώνει και το αντίστροφο. Στην PHP οι arrays είναι στην πραγματικότητα ordered maps. Αν κάνω λάθος ας με διορθώσει κάποιος.

 

Δεν κάνεις λάθος, απλά μερικές λεπτομέρειες: όχι μόνο δεν είναι ανάγκη και δεν μπορείς κιόλας, και είναι συγκεκριμένα hashtables. Το τελευταίο το λέω γιατί μπορείς να υλοποιήσεις ordered map είτε με hashtable είτε με tree, και οι υλοποιήσεις έχουν διαφορετικά χαρακτηριστικά (παράδειγμα από .NET: SortedDictionary και SortedList).

 

SplFixedArray έχει νόημα να χρησιμοποιήσεις αν όντως θέλεις array και αν υπάρχει θέμα με το memory footprint (ο απλός array κάνει στη μνήμη ότι κάνει και η Βίκυ Σταμάτη στο χρήμα).

 

Ανάλογα με το τι ακριβώς προσπαθείς να κάνεις η in_array μπορεί να είναι άσχημη επιλογή γιατί είναι O(n) ενώ υπάρχουν και άλλες, συμπεριλαμβανομένου του να μην κάνεις τον έλεγχο σταδιακά (να αφήσεις duplicates δηλαδή) και να τα αφαιρέσεις μία και καλή στο τέλος.

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε έναν λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι εύκολο!

Εγγραφείτε για έναν νέο λογαριασμό

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
Συνδεθείτε  
×
×
  • Δημιουργία νέου...

Χρήσιμες πληροφορίες

Με την περιήγησή σας στο insomnia.gr, αποδέχεστε τη χρήση cookies που ενισχύουν σημαντικά την εμπειρία χρήσης.