임대차 목적물의 표시
[카테고리:] 미분류
php 프로그램을 하면 echo, print, print_r 등 콘솔로 출력을 하는 경우가 많다.
배치로 돌릴 경우에는 날라가 버리는데 cron등에 아래와 같이 등록하면 로그로 남길 수가 있다.
그것도 날짜별로.
주의할점은 실행할 스크립트가 있는 디렉토리 아래에 txt라는 서브디렉토리가 있어야 한다.
cd /script/directory
# 오늘날짜
today=$(date "+%Y%m%d")
# 로그파일명 저장. 상대경로로 했는데... 안되면 절대경로로 바꿔주세요
logfile=./txt/${today}gen.log
# 스크립트 실행
sudo sh -c "php my_script.php" >> ${logfile}
# 날짜 로그파일 넣는 다른 방법
sudo php script_name.php >> ./txt/$(date +\%Y\%m\%d)_log.txt &
간단하게 호출하기
<?php function cbExclaim($str) { return print($str."!\n"); } function cbAsk($str) { return print($str."?\n"); } function callCallback($str, $cbFunc) { // $cbFunc로 콜백 함수 호출 $cbFunc($str); } // $cbFunc 파라미터에 "cbExclaim", "cbAsk" 입력하여 콜백함수 호출 callCallback("안녕", "cbExclaim"); callCallback("안녕", "cbAsk"); ?>
출력
안녕!
안녕?
인스턴스의 함수를 파라미터와 함께 호출하기
<?php // $obj는 클래스의 인스턴스. function_name 이라는 함수를 가지고 있다. $cbfunc = array(&$obj, "function_name"); $param = array("param1", "param2", true); // $obj->function_name 함수를 // 파라미터 3개("param1", "param2", true)를 대입하여 호출한다. $rtn = call_user_func_array($cbfunc, $param); ?>
비주얼스튜디오 코드에서 sftp로 원격 소스를 수정할때 읽기 전용이라고 수정이 안될때가 있다.
VScode => File => Preferences => Settings 메뉴를 연다.
Select “download when open in remote exploreer” 를 검색한다.
체크박스가 하나 나올텐데 체크해제된걸 체크하고 VScode를 재실행한다.
이제 수정이 된다.