無関係なクラスが内部に定義されているモデルがありました。
私はプロトタイピングをしていて、それを適切に作成するために時間を費やしていませんでした。プロトタイプがエンドユーザーに受け入れられたので、もう一度調べて、コードを適切に再編成したいと思います。クラスは次のようになります。
<?php
class myclassABC
{
private $_hostname;
private $_password;
private $_username;
private $_connection;
private $_data;
private $_timeout;
private $_prompt;
public function __construct($hostname, $password, $username = "", $timeout = 10)
{
$this->_hostname = $hostname;
$this->_password = $password;
$this->_username = $username;
$this->_timeout = $timeout;
} // __construct
public function connect()
{
}
public function dosomethingelse()
{
}
}//end class
このすべてのコードを別のファイルに移動しました。このファイルはライブラリフォルダーにあります。しかし、モデル内のオブジェクトを適切にインスタンス化する方法を理解するのに問題があります。私は試した:
//pass all the data we need as an array of parameters.
$params = array('_hostname' => '$ip', '_password' => 'password', '_username' => '');
$hp = $this->load->library($classname,$params );
$hp->connect();
$data= $hp->dosomethingelse();
$hp->close();
適切なクラスを読み込んでいますが、次のエラーメッセージが表示されます。
重大度:警告
メッセージ:HP5406_ssh :: __construct()の引数2がありません。これは、1095行の/var/www/m.racktables/system/core/Loader.phpで呼び出され、定義されています。
ファイル名:libraries / HP5406_ssh.php
行番号:22
引数2はパスワードです。
申し訳ありませんが、codeigniterでライブラリを使用するのはこれが初めてです。
あなたがいくつかの提案を提供することができれば、それはありがたいです。