PHP ceil(올림), floor(내림), round(반올림)

300x250

 

아래와 같이 올림, 버림, 반올림은 다른언어와 마찬가지로 똑같이 사용할 수 있습니다.

$val = 20.123

//올림
echo ceil($val); // 21

//내림
echo floor($val); // 20

//반올림
echo round($val); // 20

 

그리고 round는 소수점 자리를 정할수 있는데

echo round($val, 2);

위와 같이 round 함수에 round(변수명, 소수점 자리수) 소수점자리수를 넣으면

쉽게 끊어서 표시 할 수 있습니다.

 

c의 %.2f 이런느낌이죠

300x250

댓글()

Class 및 생성자 선언, 객체 array_push

300x250
foreach($array_data as $data1)
{
	echo $data1->company;
}

 

PHP에서는 아래와 같이 클래스를 선언 하며, 생성 자에는 클래스명 대신 __construct 를 써줍니다.

class ListData
{
	public $rank;
	public $company;
	public $cnt;
	public $per;

	function __construct($rank, $company, $cnt, $per)
	{
		$this->rank = $rank;
		$this->company = $company;
		$this->cnt = $cnt;
		$this->per = $per;
	}	
}

 

아래에서는 클래스 객체를 선언 후 배열에 추가해 주는 코드 입니다.

$array_data = array();

$list_data1 = new ListData(1,"회사1",3,50);
array_push($array_data, $list_data1);

$list_data2 = new ListData(2,"회사2",2,30);
array_push($array_data, $list_data2);

 

array_data 라는 배열을 만들고

list_data1, list_data2 라는 객체를 만들어서 array_push 로 배열에 추가 하였습니다.

 

이제 추가된 배열을 foreach로 가져와서 company 변수를 출력해보겠습니다.

 

foreach(배열 변수명 as 반환될 객체명)

{

 

}

foreach($array_data as $data1)
{
	echo $data1->company;
}

 

300x250

댓글()

PHP 5.6 SESSION 유지 및 시간 늘리기 및 자동 로그인 방법

300x250

이 글을 보시는 분들은 다른사이트에서 

session.cookie_lifetime  

session.cache_expire 

관련 변수를 변경하였는데 세션유지가 안되서 이 글을 보고있을 껍니다.

 

 

세션 설정 외에도 GC(c#의 garbage collection) 이라고 하는 동작이 있습니다.

관련 설정 변수는 아래 3개 입니다. 아마 아래와 같은 기본값으로 설정되어 있을껍니다.

session.gc_probability = 0

session.gc_divisor = 1000    <-- 1/1000 으로 0.1% 확률로 쿠키파일이 청소 됩니다.

session.gc_maxlifetime = 0

 

 

아래와같이 수정해보세요

저는 etc/php/5.6/apache2 경로에 있는 php.ini를 수정하겠습니다.

 

아래와 같이 vi 편집기로 php.ini 파일을 열어줍니다.

 

session.cookie_lifetime = 0

session.cache_expire = 14400  (분단위)

session.gc_maxlifetime = 65535    <-- 대략 16시간 마다 쿠키파일이 청소되게 하였습니다. (초단위)

 

 

:wq! 로 수정 후 나와서

아래와 같이 꼭 아파치를 재시작 해줘야 합니다.

service apache2 restart

 

 

세션 30일 저장 만든 php 설정 값 입니다.

 

 

 

자동 로그인 처리(저장된 세션 쿠키 사용)

 

로그인 시 savesession 이라는 쿠키를 만들어서 PHPSESSIONID 값을 저장 합니다.

이후 브라우저를 다시 켰을때 만약 savesession 쿠키 값이 있으면
저장했던 savesessino 쿠키 값으로 PHPSESSIONID 필드를 만들어서 값을 넣습니다.

이렇게 되면 서버에 세션(30일)이 남아있는한 무한 자동 로그인이 됩니다.

 

 

 

 

 

세션정보는 파일관리로 했을경우 아래 경로에 저장 됩니다.

/var/lib/php/sessions 

만약 세션설정이 실패 했다면, 이 경로의 파일들의 수정날짜를 보면 30분전 파일은 다 지워진걸 확인 할 수 있습니다.

 

php 소스에서 수정시에는 session_start 하는 코드에 입력되어야 합니다.

session_cache_limiter('private');
ini_set("session.cookie_lifetime", "0");
ini_set("session.cache_expire", "14400");
ini_set("session.gc_maxlifetime", "2592000");

session_start();

 

300x250

댓글()

Angular 테스트 코드

웹 프로그래밍/HTML - CSS|2022. 4. 14. 21:21
300x250

angluar_test.html
0.00MB

<!DOCTYPE html>
<html ng-app>
<head>
  <title>Hello, Angular</title>
  <script src="https://code.angularjs.org/1.5.8/angular.min.js"></script>
</head>
<body ng-init="name='World'">
  <label>Name</label>
  <input ng-model="name" />
  <span>Hello, {{ name }}!</span>
  <p ng-bind="name"></p>
</body>
</html>

 

<html ng-app>

ng-app 이부분이 없으면 동작하지 않는다!

 

코드 내용

input name 입력시

페이지 새로 고침 없이 span 영역에서 바로바로 변경 된다.

300x250

댓글()