>백엔드 개발 >PHP 튜토리얼 >PHP에서 로깅 함수를 작성하는 방법

PHP에서 로깅 함수를 작성하는 방법

WBOY
WBOY원래의
2016-07-29 09:00:061108검색

로그 함수를 작성해 보겠습니다. 먼저 요구사항을 이해해야 합니다. 예를 들어, 프로그램이 특정 단계에서 실행될 때 값을 인쇄하려고 합니다. 변수(주소) $user_address를 로그에 추가하면 로그가 다음과 같이 작성되기를 바랍니다.

`xx-xx-xx xx:xx $user_address : 上海市杨浦区xxxxx

그런 다음 각 로그는 날짜와 시간이 포함된 개행 문자여야 합니다.

함수 이름이 log()라고 가정합니다.

우리는 그를 log('usera ddress:user_address);

그런 다음 $user_address가 배열이고 배열의 모든 내용을 로그에 출력하고 싶습니다. , 어떻게 해야 하나요?

print_r($arg,true)라는 함수가 있는데, 두 번째 매개변수는 직접 출력하지 않는다는 의미인데, 출력된 결과를 반환 값으로 사용하는 것으로 알고 있습니다. 결과는 문자열입니다.

log 함수는 다음과 같이 작성할 수 있습니다.

<code><span>log</span>(){
    <span>$args</span> = func_get_args();<span>//获得传入的所有参数的数组</span><span>$numargs</span> = func_num_args(); <span>//参数的个数</span><span>if</span> (<span>$numargs</span> == <span>0</span>) {
        <span>$log</span> = <span>""</span>;
    } elseif (<span>$numargs</span> == <span>1</span>) {
        <span>$log</span> = <span>$args</span>[<span>0</span>];
    } <span>else</span> {
        <span>$format</span> = array_shift(<span>$args</span>); <span>//分割掉函数第一个元素,并且做返回值返回,'$user_address:%s'</span><span>$log</span> = vsprintf(<span>$format</span>, <span>$args</span>); <span>//把参数代入$format中,</span>
    }
    <span>$log</span> = <span>date</span>(<span>"[Y/m/d H:i:s] "</span>) . <span>$log</span> . PHP_EOL;<span>//加上时间</span><span>$file</span> = <span>'/usr/share/nginx/html/log.log'</span>;
    <span>$fp</span> = <span>fopen</span>(<span>$file</span>, <span>'a'</span>);
    <span>fwrite</span>(<span>$fp</span>, <span>$log</span>);
    <span>fclose</span>(<span>$fp</span>);
    <span>return</span> true;
    } 
</code>
사용법:

1. 일반 변수 $a를 인쇄합니다.

log('得到了$a的值:%s',$a );

2. 배열 $arr

log('%s',print_r($arr,true));

').addClass('pre- 번호 매기기').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); }); 위 내용은 관련 측면을 포함하여 PHP를 사용하여 로그 함수를 작성하는 방법을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.