PHP Classes

File: Attribut.php

Recommend this page to a friend!
  Classes of Reiner Entzminger   PDOM   Attribut.php   Download  
File: Attribut.php
Role: ???
Content type: text/plain
Description: Attribute-Handler
Class: PDOM
Author: By
Last change:
Date: 22 years ago
Size: 9,874 bytes
 

Contents

Class file image Download
<? define( "ATTRIBUT", "attribut" ); /*======================================================================================== * Autor: Reiner Entzminger Telefon (0 63 41) 8 43 69 * Südring 10 Telefax (0 63 41) 8 43 69 * D-76829 Landau Mobil +49(0)170 7 34 62 72 * * http://www.team-entzminger.de Mail reiner@team-entzminger.de *========================================================================================= * Attribut Version 1.00.0002 Datum: 26.02.2002 *========================================================================================= * Enthält alle Attribute eines Elements in einem assoziativen Array *=======================================================================================*/ class Attribut { var $attributes = array(); /**----------------------------------------------------------------------- * Attribut instanziiert das Objekt Attribut und legt ein neues Attribut an * @param attributes - (obtional) ein assoziatives Array mit den Attributen * eines Elements. Dieser Parameter schließt die zwei folgend genannten aus. * @param attribut - (obtional) das anzulegende Attribut * @param value - (obtional) der Wert des Attributs * Die letzten Paremter schließen den zuerst genannten Parameter aus. *-----------------------------------------------------------------------*/ function Attribut() { // $this->pro->Method( "class Attribut()" ); $GLOBALS['error'] = 0; $arga = func_num_args(); $args = func_get_args(); // prüfen, ob Parameter an den Konstruktor übergeben wurden // if ( $arga > 0 ) { // prüfen, ob nur ein Parameter übergeben wurde. Ist dies der Fall, dann // muss der Parameter ein assoziativer Array sein. // if ( $arga == 1 ) { // prüfen, ob der angegebene Parameter den korrekten Datentyp enthält // if ( is_array( $args[0] ) ) { $keys = array_keys( $args[0] ); // falls der Parameter nicht leer ist, dann sollten indizes assoziativ // sein (sie dürfen keine numerischen Werte enthalten). // if ( ! empty( $keys ) ) { if ( is_string( $keys[0] ) ) { $this->attributes = $args[0]; } else { $GLOBALS['error'] = 2; // kein assoziativer Array } // if ( is_string( $keys[0] ) ) } // if ( ! empty( $keys ) ) } else { $GLOBALS['error'] = 1; // falscher Datentyp } // if ( is_array( $args[0] ) ) } // if ( $arga == 1 && is_array( $args[0] ) ) // prüfen, ob zwei Parameter übergeben wurden. Der erste Parameter muss vom // Datentyp String sein. Der erste enthält den Namen des Attributs und der // zweite den Wert des Attributs // else if ( $arga == 2 ) { if ( is_string( $args[0] ) ) { $this->attributes[$args[0]] = $args[1]; } else { $GLOBALS['error'] = 1; // falscher Datentyp } // if ( is_string( $arga[0] ) } // if ( $arga == 2 ) } // if ( $arga > 0 ) // $this->pro->Returns( "class Attribut()" ); } // function Methode() /**----------------------------------------------------------------------- * setAttributes setzt die Attribute eines Elements aus einem assoziativen * array * @param $attributes - ein assoziatives Array mit den Attributen eines * Elements. * @retrun wurde ein korrekter Parameter übergeben und konnten die Attribute * gesetzt werden, wird true zurückgegeben, sonst false. *-----------------------------------------------------------------------*/ function setAttributes( $attributes ) { // $this->pro->Method( "Attribut: setAttributes()" ); $GLOBALS['error'] = 0; $result = false; // prüfen, ob der angegebene Parameter den korrekten Datentyp enthält // if ( is_array( $attributes ) ) { $keys = array_keys( $attributes ); // falls der Parameter nicht leer ist, dann sollten indizess assoziativ // sein (sie dürfen keine numerischen Werte enthalten). // if ( ! empty( $keys ) ) { if ( is_string( $keys[0] ) ) { $this->attributes = $attributes; $result = true; } else { $GLOBALS['error'] = 2; // kein assoziativer Array } // if ( is_string( $keys[0] ) ) } // if ( ! empty( $keys ) ) } else { $GLOBALS['error'] = 1; // falscher Datentyp } // if ( is_array( $attributes ) ) // $this->pro->Returns( "Attribut: setAttributes()" ); return $result; } // function setAttributes() /**----------------------------------------------------------------------- * setAttribut setzt ein neues Attribut in der Auflistung der Attribute * @param attribut - das neu anzulegende Attribut * @param value - der Wert des Attributs *-----------------------------------------------------------------------*/ function setAttribut( $attribut, $value ) { // $this->pro->Method( "Attribut: setAttribut()" ); $GLOBALS['error'] = 0; $result = false; // prüfen, ob der erste Parameter vom Datentyp String ist // if ( is_string( $attribut ) ) { $this->attributes[$attribut] = $value; $result = true; } else { $GLOBALS['error'] = 1; // falscher Datentyp } // if ( is_string( $attribut ) ) // $this->pro->Returns( "Attribut: setAttribut()" ); return $result; } // function setAttribut() /**----------------------------------------------------------------------- * getAttribut gibt das benannte Attribut (Index oder Name) zurück * @param index - Index innerhalb der Sammlung der Attribute * @param name - der Name des Attributs * @return den Wert des abgefragten Attributs oder false, falls dieser nicht * gefunden werden konnte. *-----------------------------------------------------------------------*/ function getAttribut( $attribut ) { // $this->pro->Method( "Attribut: getAttribut()" ); $GLOBALS['error'] = 0; // prüfen, von welchem Datentyp der Parameter ist // String, Attribut nach dem Namen abfragen // Long, Attribut über den Index ermitteln // if ( is_string( $attribut ) ) { if ( isset( $this->attributes[$attribut] ) ) { $result = $this->attributes[$attribut]; } else { $GLOBALS['error'] = 3; // Attribut nicht in der Sammlung $result = false; } // if ( isset( $this->attributes[$attribut] ) ) } else { $keys = array_keys( $this->attributes ); if ( $attribut < count( $keys ) ) { if ( $attribut > -1 ) { $result = $this->attributes[$keys[$attribut]]; } else { $GLOBALS['error'] = 4; // Index out of bounds $result = false; } // if ( $attribut > -1 ) } else { $GLOBALS['error'] = 4; // Index out of bounds $result = false; } // if ( $attribut < count( $keys ) ) } // if ( is_string( $attribut ) ) // $this->pro->Returns( "Attribut: getAttribut()" ); return $result; } // function getAttribut() /**----------------------------------------------------------------------- * getKeys gibt die Attributnamen in einer Indizierten Tabelle zurück * @return die Namen der Attribute eines Elements *-----------------------------------------------------------------------*/ function getKeys() { // $this->pro->Method( "Attribut: getKeys()" ); // $this->pro->Returns( "Attribut: getKeys()" ); return array_keys( $this->attributes ); } // function getKeys() /**----------------------------------------------------------------------- * toString gibt eine Liste der Attribute mit Namen und deren Werte, zurück * @return Liste der Attribute *-----------------------------------------------------------------------*/ function toString() { // $this->pro->Method( "Attribut: toString()" ); $result = "Attribute:<br><br>\n\n"; $keys = array_keys( $this->attributes ); for( $i=0; $i< count( $keys ); $i++ ) { $result .= "&nbps;&nbsp;&nbsp;" . $keys[$i] . " = " . $this->attributes[$keys[$i]] . "<br>\n"; } // for( $i=0; $i< count( $keys ); $i++ ) // $this->pro->Returns( "Attribut: toString()" ); return $result; } // function Methode() } // class Attribut ?>