The Judy class

Introduction

The Judy class implements the ArrayAccess interface and the Iterator interface. This class, once instantiated, can be accessed like a PHP array.

A PHP Judy object (or Judy Array) can be one of the following type :

Example #1 Judy array example

<?php
    $judy 
= new Judy(Judy::INT_TO_MIXED);
    
$judy[1] = "one";
    
$judy[2] = array('a''b''c');
    
$judy[3] = new Judy(Judy::BITSET);
?>

Class synopsis

Judy implements ArrayAccess , Iterator {
/* Constants */
const integer Judy::BITSET = 1 ;
const integer Judy::INT_TO_INT = 2 ;
const integer Judy::INT_TO_MIXED = 3 ;
const integer Judy::STRING_TO_INT = 4 ;
const integer Judy::STRING_TO_MIXED = 5 ;
/* Methods */
public void byCount ( integer $nth_index )
public Judy __construct ( integer $judy_type )
public void count ([ string $index_start [, string $index_end ]] )
public void __destruct ( void )
public mixed first ( mixed $index )
public mixed firstEmpty ( mixed $index )
public void free ( void )
public integer getType ( void )
public void last ( string $index )
public mixed lastEmpty ( mixed $index )
public integer memoryUsage ( void )
public mixed next ( mixed $index )
public mixed nextEmpty ( mixed $index )
public bool offsetExists ( mixed $offset )
public mixed offsetGet ( mixed $offset )
public void offsetSet ( mixed $offset , mixed $value )
public void offsetUnset ( mixed $offset )
public mixed prev ( mixed $index )
public mixed prevEmpty ( mixed $index )
public void size ( void )
}

Predefined Constants

Judy Node Types

Judy::BITSET

Define the Judy Array as a Bitset with keys as Integer and Values as a Boolean

Judy::INT_TO_INT

Define the Judy Array with key/values as Integer, and Integer only.

Judy::INT_TO_MIXED

Define the Judy Array with keys as Integer and Values of any type.

Judy::STRING_TO_INT

Define the Judy Array with keys as a String and Values as Integer, and Integer only.

Judy::STRING_TO_MIXED

Define the Judy Array with keys as a String and Values of any type.

Table of Contents


Copyright © 2010-2024 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout