¿Puedo agregar una clave de matriz PHP sin un valor asignado en una variable de clase?

StackOverflow https://stackoverflow.com/questions/166615

  •  03-07-2019
  •  | 
  •  

Pregunta

Actualmente estoy abriéndome camino a través de Tutorial de IBM sobre CakePHP

En un momento me encuentro con este fragmento de código:

<?php
class Dealer extends AppModel {
    var $name = 'Dealer';
    var $hasMany = array (
        'Product' => array(
            'className' => 'Product',
            'conditions'=>, // is this allowed?
            'order'=>, // same thing here
            'foreignKey'=>'dealer_id'
        )
    );
}
?>

Cuando lo ejecuto recibo el siguiente mensaje de error: " Error de análisis: error de sintaxis, inesperado ',' en /Applications/MAMP/htdocs/cakephp/app/models/product.php en la línea 7 "

Soy un n00b en PHP, así que mi pregunta es: ¿está permitido hacer una matriz con claves sin valores asignados? ¿Alguien ha jugado un poco con este tut y sabe lo que pasa?

¿Fue útil?

Solución

Asigna el valor nulo en lugar de omitir nada. El manual dice

  

isset () devolverá FALSE si prueba una variable que se ha establecido en NULL

<?php
class Dealer extends AppModel
{
var $name = 'Dealer';
var $hasMany = array ('Product' => array(
'className' => 'Product',
'conditions'=> null,
'order'=> null,
'foreignKey'=>'dealer_id')
);
}
?>

Esto funciona bien.

Otros consejos

Es legal, aunque, por lo que yo sé, debes decir explícitamente que está 'vacío' asignándole un valor nulo,

$hasMany = array ('Product' => array(
'className' => 'Product',
'conditions'=> null, // is this allowed?
'order'=> null, // same thing here
'foreignKey'=>'dealer_id'));

El ejemplo que ha dado suena muy mal, y probablemente no debería funcionar, ya que no lo es.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top