Junior — Middle
Σε ποιους τύπους δεδομένων απαγορεύεται να αποδοθεί μια τιμή δείκτη;
sobes.tech AI
Απάντηση από AI
Στο PHP, η ανάθεση τιμής σε δείκτη (π.χ., κατά την πρόσβαση σε έναν πίνακα μέσω τετραγωνικών αγκυλών) απαγορεύεται για τους ακόλουθους τύπους δεδομένων:
- Ακέραιοι τύποι (int, float, string, bool) — αυτοί δεν είναι πίνακες ή αντικείμενα, επομένως δεν μπορείτε να κάνετε κάτι όπως
$intVar[0] = 'a';. - NULL — δεν επιτρέπεται η ανάθεση δείκτη, καθώς το NULL δεν είναι πίνακας ή αντικείμενο.
Η ανάθεση δείκτη είναι δυνατή μόνο για:
- Πίνακες
- Αντικείμενα που υλοποιούν το interface ArrayAccess
Παράδειγμα:
$arr = [];
$arr[0] = 'τιμή'; // σωστό
$intVar = 10;
$intVar[0] = 'a'; // σφάλμα