以前のプログラマーがCodeIgniterフレームワークで構築したAPIをリモートでデバッグしています。私は他のPHPのMVCフレームワークでプログラムされたが、私は前にAPIを構築していない(もCodeIgniterのを使用)決して、および変数をデバッグのは常にはエコーほど簡単だった、のvar_dump、ますprint_r、...または単にフレームワークのを使用しますログコマンド。CodeIgniterで作成したAPIに変数を記録する方法は?
今、私はそれにエラーとログを表示するページを持っていない(または私がやる?)、私は運なしLOG_MESSAGE、のerror_log、およびput_file_contentsを試してみました!最初のログコマンドだけを実行しますが、2番目のログコマンドは実行しません!私は、次の機能を持たせて私モデルで
:
public function processcontacts($data) {
error_log(json_encode($data), 3, "~/logs/processcontacts_data.txt");
$countryCode = $data["countryCode"];
error_log(json_encode($countryCode), 3, "~/logs/processcontacts_countryCode.txt");
$isContact = array();
$isNotContact = array();
foreach ($data as $key => $value) {
$value->phone = str_replace(" ", "", $value->phone);
$value->name = str_replace(" undefined", "", $value->name);
$value->name = str_replace(" Undefined", "", $value->name);
$query = $this->db->get_where('appusers', array(
'id' => $this->getMyId($value->phone, $countryCode)
)
);
if ($query->num_rows() > 0) {
$row = $query->row();
$value->country = $row->country;
if ($row->photoapproved == 1) {
$value->photo = $row->photo;
}
$value->token = $row->token;
array_push($isContact, $value);
} else {
array_push($isNotContact, $value);
}
}
$returner = array();
$returner["isMember"] = $isContact;
$returner["isNotMember"] = $isNotContact;
return json_encode($returner);
}
は、私は2つのerror_log(またはput_file_contents)を持って、まだ一つだけは、その後何もアップして示していません!どのような可能性がこれの原因となる可能性がありますそれを追跡する方法?
codeigniterにはフックがあります。ルーティングの前または後に呼び出すことができるフックを作成し、その時点以降に発生したエラーをキャッチすることができます。 – Ima
あなたは別のファイルに書き込むことを知っていますか? –
あなたは、Postman(https://chrome.google.com/webstore/detail/postman/fhbjgbiflinjbdggehcddcbncdddomop?hl=en)でリクエストを作成して、ちょうど 'var_dump()'を実行してみることができます。 – xpuc7o