ugrás a tartalomhoz

PHP Weekly - 75.

Granc Róbert · 2002. Feb. 18. (H), 14.04
A Zend szokásos heti hírlevelének 75. számából:

Sockets gondok - Richard Samar alaposan átnézte a sockets kódot, és számos hibát fedezett fel és javított ki benne. A socket_send() prototípus, és a socket_recvfrom() 6. paramétere hibás volt, a socket_sendto() 5. paramétere pedig eltért a többi funkcióétól. Mindezek a javítások már belekerültek a CVS-be is.

Sybase dátum és idő formátumok - most, hogy a FreeTDS lehetővé teszi a sztringgé konvertálás alkalmával különböző dátum/idő formátumok alkalmazását, egy új patch elérhetővé teszi ezt a funkciót a Sybase felhasználók számára PHP-ben is.

odbc_execute problémák - számos hiba került kijavításra a múlt héten, köztük egy biztonsági probléma is. Ha valaki safe-mode-ban használja ezt a funkciót, ajánlott, hogy frissítsen a snapshotból, vagy közvetlenül az üzenetben található patch alapján (ld. az eredeti hírlevelet). A patch már része lesz a PHP 4.2.0-nak.

Output buffering - 5 hiba került kijavításra, közöttük egy memória-túlcsordulási probléma (memory leak) is. A patch tartalmaz egy session-t érintő megoldást is, elérhető az eredeti hírlevélből.

PHP streamek - Wez Furlong folytatta a munkát ezen a kódon, és egy új tesztverziót tett közzé belőle, amelyhez tesztelőket várnak.

A Zend Motor(ok) és a CVS - amint azt a múlt heti hírlevélben is megemlítettük, Zeev Suraski elérhetővé tette a Zend motorokat a cvs.php.net CVS-ben is. Ezek egyben a lxr.php.net és a bonsai.php.net címeken is elérhetőek, valamint Andrei Zmievski elérhetővé tette az automatikusan generált változások listáját (changelog) is.

Referencia makrók - Jason Green készített egy csomó Zend makrót a kiegészítőkön belül előforduló referenciák kezelésére. A patch az eredeti hírlevélből érhető el.

Stem kiegészítő - a teljesen újraírt kiegészítő lehetővé teszi a felhasználóknak az angol szavak elő- és utótagjainak levágását, valamint már francia, spanyol, holland, dán, német, olasz, norvég, portugál, orosz és svéd nyelvekre is elérhető. Főleg szótárak, fordítógépek, hasonlók esetén hasznos ez a kiegészítő.

Definiálatlan tulajdonság osztályon belül - Az osztálystruktúrában szereplő hiba (a következők szerint:

<?php

error_reporting(E_ALL);

class foo {

var $bar;

}

$n = new foo;

echo $n->bar;

?> ) a következő választ adja:

"PHP Notice: Undefined property: bar", míg a deklarációt teljesen figyelmen kívül hagyja. Jelenleg vizsgálják a hibát.

SRM kiegészítő és daemon - végre elkészült ez a kiegészítő. Lehetővé teszi a távoli sessionkezelési funkciókat (Session Management Remote functions - SRM), alkalmazásszintű változók és távoli objektumok használatát. A kód már a CVS része.

Tokenizer kiegészítő - szintén a CVS része, leírás és minta a forráskód könyvtárában (ext/tokenizer) található.
 
1

Re: 75. szám

bbalint · 2002. Feb. 23. (Szo), 10.13
a "Definiálatlan tulajdonság osztályon belül" hibához:

viszont definiálja a tulajdonságot, ha megadunk neki egy kezdőértéket, pl:

először csináltam egy metódust, ami a megadott nevű tulajdonságot NULL-ra állítja.:

$propname=NULL;

}

}

?>

ez a metódus a php azon tulajdonságát használja ki, hogy a nem inicializált változókat (is) létrehozza.

ezekután minden osztályt az 'stdclass_'-tól kell származtatni, és a származtatott osztályok konstruktorában kell meghívogatni a null() metódust:

null('nev');

$this->nev=$nev;

$this->null('jelszo');

$this->jelszo=$jelszo;

}

}

?>

én a kezdőérték általi beállítást javaslom, mivel meg lehet spórolni néhány sort és egy metódust(ami processzoridő is;)

--bbalint