Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/andaniel05/ObjectCollection
Clase PHP que representa una colección de objetos de un mismo tipo.
https://github.com/andaniel05/ObjectCollection
Last synced: about 2 months ago
JSON representation
Clase PHP que representa una colección de objetos de un mismo tipo.
- Host: GitHub
- URL: https://github.com/andaniel05/ObjectCollection
- Owner: andaniel05
- License: mit
- Created: 2016-09-28T14:54:25.000Z (about 8 years ago)
- Default Branch: v1.0
- Last Pushed: 2017-01-04T15:46:09.000Z (almost 8 years ago)
- Last Synced: 2024-07-31T20:45:49.397Z (5 months ago)
- Language: PHP
- Size: 5.86 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
- cuban-opensource - ObjectCollection
README
ObjectCollection
================Representa una colección de objetos de un mismo tipo.
## Funcionamiento interno
Internamente se usa un array nativo para almacenar los elementos. En el constructor de la clase se tiene que especificar el tipo de elementos que se almacenarán. Este tipo de elementos puede ser tanto un nombre de clase como de interfaz. En el momento de insertar elementos se va a chequear que el tipo de ese nuevo elemento se corresponda con el que se especificó en el constructor de la clase, por lo que se garantiza que el array solo contendrá elementos del tipo especificado.
## Requerimientos
PHP 5.3+
## Ejemplos de uso
Ejemplo1. Operaciones básicas con la clase.
```php
name = $name;
$this->age = $age;
}
}$andy = new Person('andy', 27);
$andria = new Person('andria', 35);
$sonia = new Person('sonia', 52);
$antonio = new Person('antonio', 54);$collection = new ObjectCollection('Person');
// Inserción con índices.
$collection['andy'] = $andy;
$collection['andria'] = $andria;// Inserción sin índices (añade al final del array).
$collection[] = $sonia;
$collection[] = $antonio;// Recorridos en forma de array. Hay garantía de que $person será siempre una
// instancia de la clase Person.
foreach ($collection as $index => $person) {
echo "Index: {$key}, Name: {$person->getName()}, Age: {$person->getAge()}\n";
}// Contar elementos.
echo count($collection); // Devuelve 4.// Obtener elementos.
$andy1 = $collection['andy'];// Comprobar existencia de elementos.
echo isset($collection['andy']); // Devuelve TRUE.// Eliminar elementos.
unset($collection['andria']);// Obtener el array de la colección.
$array = $collection->getArray();```
Ejemplo2. Creación de un tipo de colección personalizada.
```php