Posso aggiungere una chiave dell'array PHP senza un valore assegnato in una variabile di classe?
Domanda
Attualmente mi sto facendo strada tra Tutorial di IBM su CakePHP
Ad un certo punto mi imbatto in questo frammento di codice:
<?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'
)
);
}
?>
Quando lo eseguo ricevo il seguente messaggio di errore: " Errore di analisi: errore di sintassi, imprevisto ',' in /Applications/MAMP/htdocs/cakephp/app/models/product.php sulla riga 7 "
Sono un n00b di PHP, quindi la mia domanda è: è permesso creare un array con chiavi senza valori assegnati? Qualcuno ha giocato con questo tut e sa cosa succede?
Soluzione
Assegna il valore null invece di tralasciare qualsiasi cosa. Il dice
isset () restituirà FALSE se si verifica una variabile che è stata impostata su NULL
<?php
class Dealer extends AppModel
{
var $name = 'Dealer';
var $hasMany = array ('Product' => array(
'className' => 'Product',
'conditions'=> null,
'order'=> null,
'foreignKey'=>'dealer_id')
);
}
?>
Funziona bene.
Altri suggerimenti
È legale, sebbene per quanto ne sappia, devi dire esplicitamente che è "vuoto" assegnandogli null,
$hasMany = array ('Product' => array(
'className' => 'Product',
'conditions'=> null, // is this allowed?
'order'=> null, // same thing here
'foreignKey'=>'dealer_id'));
L'esempio che hai dato suona molto male e probabilmente non dovrebbe funzionare, come non lo è.