Le Modèle (/components/com_auto/models/auto.php)
Submitted by rems on 15. May 2009 - 11:19
Bonjour,
Pouvez vous m'expliquer en detaille le code suivat: (en gras)
<?php
defined(‘_JEXEC’) or die();
jimport(‘joomla.application.component.model’); class AutoModelAuto
extends JModel {
function _getAutoQuery( &$options ){
$db = JFactory::getDBO();
$id = @$options[‘id’];
$select = ‘a.*’;
$from = ‘#__auto AS a’;
$wheres[] = ‘a.published = 1’;
$query = "SELECT " . $select .
"\n FROM " . $from .
"\n WHERE " . implode( "\n AND ", $wheres );
return $query;
}
function getAutoList( $options=array() ){
$query = $this->_getAutoQuery( $options );
$result = $this->_getList( $query );
return @$result;
}
}
?>Pourquoi
&$
@$
a.
a quoi ça sert je ne comprend pas
Merci pour votre aide
»
- Add new comment
- 4035 reads

j'adore le commentaire précédent
alors
&$options : l'argument $options est passé par référence à la fonction (voir le passage d'arguments à une fonction, c'est du PHP)
@$options['id'] : @ est l'opérateur de contrôle d'erreur en PHP, en gros si la donnée n'existe pas, il n'y aurra pas d'erreur.
a. : il s'agit de l'alias sur la table #_auto (voir sql)
Cordialement.
Désolé, mais je peux pas vous
Désolé, mais je peux pas vous aider. Je connais pas le code et j'en comprends rien. Courage. casino en ligne
re a.
le code "a" est un alias pour "#_auto" qui est lui même une reference à jos_auto le nom de la table sur ta base MySQL.
le point "a.published" se traduit par jos_auto.published
pour le @ cherche en php c'est un echappement pour les erreurs.
pour @$nomDeVariable c'est comme $nomDeVariable mais avec l'échappement.
crdlt,
Seb
c'est du PHP. Je m'en
c'est du PHP.
Je m'en souviens plus trop mais je te donne quand meme qlq elements de reponse:
- &$ : Ici l'operateur "&" indique un passage de variables par référence. C'est à dire tu le récupéres depuis son adressage dans le mémoire. Et par principe le "@" devrait être l'opérateur qu'il faut utiliser si tu veux avoir la valeur de cette référence (le &). Quelques notions en C devrait t'aider la dessus.
Je te donne ce lien avant de dire n'importe quoi: http://www.journaldunet.com/developpeur/tutoriel/php/040220-php-referenc...
- a. : Ici l'opérateur "." indique l'accès dans une propriété d'un objet. Mais apparemment ici c'est la colonne d'une table MySQL.
voilà, ce ne sont pas des reponses completes mais juste qlq piste qui peut t'ouvrir la voie
a.nomchamps où a est un alias
a.nomchamps où a est un alias du nom de la table (on aurait pu mettre b z).
Cette lettre est le raccourci du nom de la table identifiée par la commande suivante $from = ‘#__auto AS a’; dans la requête SQL