PHP 디버깅을 위한 쿼리문이나 변수 출력
개인적으로 쿼리나 디버깅은 화면에 쭈욱 뿌려지는걸 좋아하는 스타일이라서
아래와 같이 화면에 그냥 나타나는걸 좋아합니다.
쿠키나 세션을 사용해서 나에게만 보이도록...
아래 2개는 그때 그때 상황봐서...
ini_set ( 'display_errors', 'On' );
$db->debug = true;
-- _listOrder_user :
SELECT x.claim_step, b.ea, b.cancel_ea, b.refund_ea, a.seq, a.code, a.regdate, b.store_seq, a.payment_seq, a.buyer_name, a.payment_kind, a.receiver_name, a.delivery_method, a.step, a.goods_price, a.delivery_price, a.payment_price, b.seq AS item_seq, b.pc, b.revie.....
-- listMyQna_user :
SELECT a.*, IF ( ISNULL(b.qna_seq), '답변대기', '답변완료' ) AS flag, c.name AS product_name, d.name AS goods_name, m.shop_name, m.manager_telephone FROM vgs.member m, vgs.product_qna a LEFT OUTER .....
▼ PHP echo 함수 대체용
function echos( $name=null, $sql=null)
{
if (empty($sql ))
{
if ($_SESSION["debugBOB"] == "Y") {
if (!empty($name))
{
echo "<br/><br/>## <b><font color=red>" . $name . " : </font></b> ";
}
echo "<br/> ";
}
return $_SESSION["debugBOB"];
exit();
}
if ($_SESSION["debugBOB"] == "Y") {
echo "<br/>-- <b><font color=red>" . $name . " : </font></b><br/>" . $sql . "; <br/><br/>";
}
}
▼ 디버깅 문구 모두 출력하기 ( aaa.php )
<?php
session_start();
$_SESSION["debugBOB"] = "Y";
?>
▼ 디버깅 문구 모두 숨기기 ( bbb.php )
<?php
session_start();
$_SESSION["debugBOB"] = "N";
?>
▼ 내부 echo 문 출력하기
if (echos("mall_seq만 필터링")=="Y") {
for ($ii = 0; $ii < count($arr_filter_mall_seq); $ii++) {
echo ($arr_filter_mall_seq[$ii] . '<br/>');
}
}
## mall_seq만 필터링 :
29
▼ 값 하나 바로 출력하기
echos("\$_total_price : ", $_total_price);
-- $_total_price : :
380000;
▼ 쿼리문 출력하기
// __FUNCTION__ 은 지금 호출된 함수 이름을 반환한다
function listEst_user($auction_seq)
{
$sql = "SELECT count(seq) as count ";
$sql .= " FROM order " ;
echos(__FUNCTION__, $sql);
$return = $this->db->GetAll($sql);
return $return;
}
-- listEst_user :
SELECT count(seq) as count FROM order;