Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5
Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5
Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5  HomePHP5ForumsRechercherLiensContact | Actualit, informations, news, articles, dossiers et forum sur PHP 5
Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5
   
Actualit, informations, news, articles, dossiers et forum sur PHP 5 Quelles sont les diffrences entre PHP 4 et PHP 5 ? Qu'apporte de plus PHP 5 par rapport son prdcesseur ? Quelles sont les nouvelles fonctions ? L'objectif de PHP5Info.com est d'apporter des rponses concrtes ces questions, vous faire dcouvrir ce que nous rserve la nouvelle monture de PHP au travers d'articles, de news et de dossiers.
Consultez galement des dossiers sur le serveur Apache, son installation et sa configuration.

Bonne visite tous :)
 
   Dernires news  
Actualit, informations, news, articles, dossiers et forum sur PHP 5 News ZMWS / ZAMP/ZAMPcd (05/10/2004)
phpMyAdmin v 2.6.0 (28/09/2004)
WAMP 1.3 (26/09/2004)
PHP 5.0.2 est sortie (24/09/2004)
ZMWS, SQLiteManager (22/09/2004)
Apache 2.0.51 (21/09/2004)
Hbergement PHP 5 / PostGreSQL (21/09/2004)
PHP 5 prend son envol (20/09/2004)
SQLite, une alternative intressante ? (15/09/2004)
 
Actualit, informations, news, articles, dossiers et forum sur PHP 5
Actualit, informations, news, articles, dossiers et forum sur PHP 5
  >> Nouveauts
>> Classes ( I )
>> Classes ( II )

>> SQLite (I)
>> SQLiteManager
   
Actualit, informations, news, articles, dossiers et forum sur PHP 5
  >> Fonctions PHP5
   
Actualit, informations, news, articles, dossiers et forum sur PHP 5
  >> Apache et PHP 5
>> Scuriser PHP
   
   
Actualit, informations, news, articles, dossiers et forum sur PHP 5
  Actualit, informations, news, articles, dossiers et forum sur PHP 5
 
   Les nouveauts introduites par PHP5 [13/06/2004]  
 

Depuis l'introduction de PHP3 en 1997, PHP est devenu la plateforme de dveloppement la plus populaire sur le net. Des millions de serveurs fonctionnent dsormais avec PHP.
PHP4 avait introduit des nouveauts pour rendre PHP plus performant et plus extensible avec notamment l'introduction du moteur Zend. Aujourd'hui, PHP5 est sur le point de sortir avec bien entendu de nouvelles fonctionnalits, un pas de plus vers la programmation oriente objets, une API DOM recrite, un moteur SQL interne, une nouvelle version de Zend, etc. Les nouveauts sont nombreuses !
En voici un bref aperu ;)

PHP davantage tourne vers la programmation orient objets (POB).

Cela ne signifie pas que le but de PHP est de devenir un langage orient objets part entire comme Java mais plutt de faciliter cette programmation et de gommer les lacunes videntes de PHP dans ce domaine. Lors du passage de PHP3 PHP4, Zeev Suraski, l'un des fondateur de PHP a recrit le moteur pour accroitre principalement ses performances et sa stabilit mais le modle d'objets est rest identique.

Si PHP4 permet de crer classes contenant des objets et des mthodes, l'hritage reste statique. Les objets tant passs par valeur, les modifications qui porteront sur un objet ne seront pas reportes sur l'objet originel. En effet, les proprits d'un objet driv ne pointent pas vers le mme objet mais il s'agit d'une simple copie. La seule alternative consiste utiliser l'oprateur & pour forcer le passage par rfrence.
Avec PHP5, le passage des objets se fera par dfaut par rfrence, ce qui simplifiera la gestion des objets. L'utilisation d'un pointeur (handle) sur chaque objet est une avance importante.

Avec PHP5 :

-> Les objets supportent un constructeur et un destructeur

--------------------------------------
<?
class foo {
var $x;

function __construct($x) {
$this->x = $x;
}

function display() {
print($this->x);
}

function __destruct() {
print("destruction");
}
}

$var = new foo(4);
$var->display(); // variable -> methode
?>

--------------------------------------

Comme vous le voyez, le constructeur est appel __construct et le destructeur __destruct

Si vous dsirez en savoir plus sur les classes, vous pouvez consulter l'article Les classes et PHP5.
Si toutefois vous dsirez dupliquer un objet, vous pouvez utiliser la mthode __clone

-> Passage par dfaut des objets par rfrence.

--------------------------------------
<?php
$source->value = 1 ; // l'objet $source une proprit value gale 1
$ref = $source ; // on cre un nouvel objet
$ref->value = 2 ;
echo $source->value ; // affiche 2 dans PHP5 et 1 dans PHP4

//Le mot cl clone permet de copier explicitement un objet et ses valeurs.
$source->value = 1 ;
$copy = clone $source;
$copy->value = 2 ;
echo $source->value ; // affiche 1
?>

--------------------------------------

-> D-rfrencement des objets

On peut utiliser directement un objet retourn par une fonction fonction()->mthode()

-> public, protected et private

Les proprits et les mthodes sont accessibles en dehors d'un objet. PHP5 dfini cependant de nouveaux critres d'accessibilit identifiables comme suit :

public function = accessible sans restriction
protected function = non accessible hors de la classe d'origine (ne fonctionne pas pour les classes etendues par ex)
private function = accessible qu' l'intrieur d'une classe

-> refonte moteur DOM

L'interface DOM (Document Object Model) a t compltement recrite. Elle avait dj t retouche avec la sortie de PHP 4.3 et cette occasion, des problmes de mmoire avaient t rsolus. Avec PHP5, DOM est plus conforme aux standards du W3C concernant les noms. Par consquent, vos scripts domxml tournant sous PHP4 ne fonctionneront plus sous PHP5. Vous tes prvenu :)

-> SimpleXML

http://php.net/simplexml

Moins complexe que l'API DOM pour manipuler des documents XML, SimpleXML rduit le nombre de lignes de code pour extraire les donnes d'un document XML.

--------------------------------------
<?php
$contenu = simplexml_load_file("articles.xml");
foreach($contenu->item as $item) {
print $item->title ."n";
}//rcupre le contenu de <title> </title> ou <title />
?>

--------------------------------------

-> SQLite

Moteur SQL qui stocke les donnes dans des fichiers sur le serveur. L'avantage c'est que l'on peut faire du SQL sans se demander si une base de donne MySQL ou PostgreSQL existe.

Voici quelques avantages :

# Supporte le standard SQL92 quelques exceptions comme par exemple la modification de la structure des tables (il faut supprimer puis recrer la table).Voici la liste des exceptions.
# Trs rapide ( estim 2-3 fois plus rapide que MySQL ou PostgreSQL) car les requtes s'oprent directement sur le mme serveur et non pas entre le serveur de fichier et la base de donnes.
# Capacit leve de stockage (jusqu' 2 Traoctets de donnes).
# Consomme moins de ressources car pas besoin de demon pour la base de donnes
# Compatibilit Linux et Windows
# Les sources font parties du domaine public.

Pour l'installer, c'est trs simple. Il suffit d'ajouter la commande "with-sqlite" lors de l'installation de PHP5 sous Unix.

--------------------------------------
<?php
//Ouverture de la base :
$db = sqlite_open('foo.db');
//Cration de la requte :
$sql = 'SELECT nom, prenom from individu';

//Execution de la requte :
$result = sqlite_query($db, $sql );

while ($row = sqlite_fetch_array($result)){
print_r($row);
}
//Fermeture de la base :
sqlite_close($db);
?>

--------------------------------------

Attention car si l'on coupe l'accs une table, c'est toute la base qui est protge. Moins performant car ncessite d'ouvrir et de refermer un fichier chaque fois. Par scurit, on prfrera Linux pour cette gestion en lecture criture.

Pour administrer SQLite, on peut utiliser SQLiteManager.

http://www.sqlite.org

-> Exceptions try() et catch()

Les exceptions sont utilises en java et elles sont optionnelles concernant PHP5. On les utilise pour contrler plus troitement le bon droulement des applications, pour dtecter et prsenter plus proprement les erreurs qui pourraient intervenir. Contrairement aux exceptions dites "normales", c'est dire celles que l'on met en place au moyen de tests et de conditions, les exceptions n'allourdissent pas votre code. Rajoutons que simplement, deux camps s'opposent au sujet de l'intrt des exceptions. Nous y reviendrons dans un prochain article.

Voil ce que nous pouvions peu prs dire sur PHP5. Certes, l'article est loin d'tre exhaustif mais il recense les principales nouveauts connatre. Il sera d'ailleurs rgulirement mis jour.

TEAM17

 
  Envoyer l'article  un ami  
  Actualit, informations, news, articles, dossiers et forum sur PHP 5
Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5
Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5
Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5
Actualit, informations, news, articles, dossiers et forum sur PHP 5 Actualit, informations, news, articles, dossiers et forum sur PHP 5