Die Antwort von LazyOne zunächst nicht für mich arbeiten. Nach einigen Tests fand ich heraus, dass mein Problem die Groß-/Kleinschreibung der Deklaration der Eigenschaft in PHPDoc war - hoffentlich können die folgenden Beobachtungen anderen helfen. Dies ist, was ich meine Modellklasse deklarieren:
class Custom extends CI_Model {}
In meinem Controller ich das Modell zum Beispiel laden und verwenden Sie die folgende Art und Weise:
$this->load->model('Custom')
$table = $this->Custom->get();
Jetzt für PhpStorm diese Klasse abholen richtig I ursprünglich hinzugefügt, wie von anderen beschrieben eine PHPDoc @property Kommentar über einem Kern-Klasse (entweder über der CI_Controller Klasse oder getrennte CI_phpStrom.php Datei) wie folgt aus:
*
* @property Custom $custom
*
jedoch diese di dn't das Problem entfernen, da die Variablennamen Groß- und Kleinschreibung wird in diesem Fall, und ich hatte zu schreiben:
*
* @property Custom $Custom
*
für meinen oben Controller-Code korrekt die Klasse zu holen.Eine Alternative wäre, Klein zu verwenden, wenn Aufruf von Funktionen (dies funktioniert auch, wenn Sie Ihre Modell-Deklaration Groß verwendet)
$this->load->model('custom')
$table = $this->custom->get();
Das Komische all diese groß oder klein geschrieben war egal, ob ich meine Modellklasse „Custom_model“ nennen - dann wurde keine Änderung vorgenommen, wenn die PHPDoc-Eigenschaftsvariable auf $ Custom_model oder $ custom_model gesetzt wurde.
Ist Ihre Modellklasse richtig benannt? CodeIgniter hat Regeln für die Benennung/Umhüllung. Außerdem haben Sie den Konstruktor dort, oder? – minboost
Der Name meiner Modellklasse ist "Person", während mein Controller "Personen" ist. – Echusen
Was versuchen Sie mit diesem '/ * @var \ person $ data * /' zu erreichen? DAs Ich verstehe Sie, was zu erklären "$ data" Variable als eine Instanz der 'Person' Klasse. Oder etwas anderes? – LazyOne