2016-11-16 9 views
0

クラスを作成してapplication/models/フォルダに保存します。Codeigniterファイルヘルパーを使用してファイルを書き込む方法

コードは以下の通りです: -

function writeANewFile() 
{ 
$path = "/LMSV1/application/models/"; 
$classname = "firstidgenerator"; 
$this->load->helper('file'); 
$data = "<?php class ".$classname." extends CI_Model { 
function generateId(\$db) 
{ 
\$data['orders'] = 'orders'; 
\$this->\$db->trans_start(); 
\$this->\$db->insert('$classname', \$data); 
\$insert_id = \$this->\$db->insert_id(); 
\$this->\$db->trans_complete(); 
return \$insert_id; 
} 
} "; 

$result = write_file(''.$path.''.$classname.'.php', $data); 
echo json_encode($result); 
} //end fucntion 

私は$path = "c:/xampp/htdocs/FrameWorks/LMSV1/application/models/";を与える場合、それが正常に任意のフォルダにファイルを保存します。

もし私が$path = "/LMSV1/application/models/";を与えた場合、それはfalseを返し、ファイルを作成しません。

問題は、パスを設定することにあり、私はどのようなパスをパラメータとして指定する必要があるのか​​分かりませんでしたか?

答えて

2

Codeigniterには、この場合に便利ないくつかのパス定数があります。定数APPPATHが必要です。

$path = APPPATH . "models/"; 
+0

私はちょうど別のことを知りたいです。このコードはLive Server上で動作しますか? –

+0

はい。定数は、インストールパスとindex.phpファイルの場所に基づいています。それは完全に移植可能です。 – DFriend

関連する問題