Rechercher une fonction PHP

La classe SplFixedArray

(PHP 5 >= 5.3.0, PHP 7)

Introduction

La classe SplFixedArray fournit les fonctionnalités principales d'un tableau. La différence majeure entre un objet SplFixedArray et un tableau standard de PHP est que SplFixedArray est de taille fixe, et n'utilise que des entier dans ses index. L'avantage est alors qu'il est plus rapide que les tableaux.

Synopsis de la classe

SplFixedArray implements Iterator , ArrayAccess , Countable {
/* Méthodes */
public __construct ([ int $size = 0 ] )
public count ( void ) : int
public current ( void ) : mixed
public static fromArray ( array $array [, bool $save_indexes = TRUE ] ) : SplFixedArray
public getSize ( void ) : int
public key ( void ) : int
public next ( void ) : void
public offsetExists ( int $index ) : bool
public offsetGet ( int $index ) : mixed
public offsetSet ( int $index , mixed $newval ) : void
public offsetUnset ( int $index ) : void
public rewind ( void ) : void
public setSize ( int $size ) : bool
public toArray ( void ) : array
public valid ( void ) : bool
public __wakeup ( void ) : void
}

Retour à la première page de Manuel PHP  Table des matières Haut

Exemples

Exemple #1 Exemple avec SplFixedArray

<?php
// Initialisation d'un tableau avec une taille fixe
$array = new SplFixedArray(5);

$array[1] = 2;
$array[4] = "foo";

var_dump($array[0]); // NULL
var_dump($array[1]); // int(2)

var_dump($array["4"]); // string(3) "foo"

// Augmentation de la taille à 10
$array->setSize(10);

$array[9] = "asdf";

// Réduction de taille de 2
$array->setSize(2);

// Les lignes suivantes émettent une RuntimeException : index invalide ou hors de l'intervalle
try {
    
var_dump($array["non-numeric"]);
} catch(
RuntimeException $re) {
    echo 
"RuntimeException : ".$re->getMessage()."\n";
}

try {
    
var_dump($array[-1]);
} catch(
RuntimeException $re) {
    echo 
"RuntimeException : ".$re->getMessage()."\n";
}

try {
    
var_dump($array[5]);
} catch(
RuntimeException $re) {
    echo 
"RuntimeException : ".$re->getMessage()."\n";
}
?>

L'exemple ci-dessus va afficher :

NULL
int(2)
string(3) "foo"
RuntimeException: Index invalid or out of range
RuntimeException: Index invalid or out of range
RuntimeException: Index invalid or out of range

Retour à la première page de Manuel PHP  Table des matières Haut

Sommaire

Rechercher une fonction PHP

Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-class.splfixedarray.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : http://php.net

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut