네이버 XE팀에서 좋은 발표자료를 내놓았다.
PHP 7.0에 대한 얘기인데 세미나 발표자료만 봐도 도움이 될것 같다.
XE Open Seminar - PHP7으로 뛰어들기 가기
세미나 발표 자료 보기
미리보는 PHP7
이름 | 설명 |
---|---|
__LINE__ | 파일의 현재 줄 번호 |
__FILE__ | 파일의 전체경로와 파일명. 포함한 파일 안에서 사용하면, 포함된 파일명을 반환합니다.. PHP 4.0.2부터, __FILE__은 언제나 절대 경로를 가지고 있습니다. 이전에는 특정한 경우에서 상대 경로를 가지고 있었습니다. |
__DIR__ | 파일의 디렉토리. 포함한 파일 안에서는, 포함된 파일의 디렉토리를 반환합니다. 이는 dirname(__FILE__)과 동일합니다. 디렉토리명은 루트 디렉토리가 아닌 이상, 마지막에 슬래시가 없습니다. (PHP 5.3.0에서 추가) |
__FUNCTION__ | 함수명. (PHP 4.3.0에서 추가) PHP 5부터 이 상수는 정의된 그대로의 함수명을 반환합니다. (대소문자 구분) PHP 4에서는 항상 소문자였습니다. |
__CLASS__ | 클래스명. (PHP 4.3.0에서 추가) PHP 5부터 이 상수는 정의된 그대로의 클래스명을 반환합니다. (대소문자 구분) PHP 4에서는 항상 소문자였습니다. |
__METHOD__ | 클래스 메쏘드명 (PHP 5.0.0에서 추가) 메쏘드 명은 정의한 대로 반환됩니다. (대소문자 구분) |
__NAMESPACE__ | 현재 이름공간 이름 (대소문자 구분). 이 상수는 컴파일 시에 정의됩니다. (PHP 5.3.0에서 추가) |
class Timer {
var $classname = "Timer";
var $start = 0;
var $stop = 0;
var $elapsed = 0;
# Constructor
function Timer( $start = true ) {
if ( $start )
$this->start();
}
# Start counting time
function start() {
$this->start = $this->_gettime();
}
# Stop counting time
function stop() {
$this->stop = $this->_gettime();
$this->elapsed = $this->_compute();
}
# Get Elapsed Time
function elapsed() {
if ( !$elapsed )
$this->stop();
return $this->elapsed;
}
# Get Elapsed Time
function reset() {
$this->start = 0;
$this->stop = 0;
$this->elapsed = 0;
}
#### PRIVATE METHODS ####
# Get Current Time
function _gettime() {
$mtime = microtime();
$mtime = explode( " ", $mtime );
return $mtime[1] + $mtime[0];
}
# Compute elapsed time
function _compute() {
return $this->stop - $this->start;
}
}
$t=new Timer();
* config/database.php 아래 추가
$db['pdo']['hostname'] = 'mysql:host=localhost;dbname=codeigniter';
$db['pdo']['username'] = 'codeigniter';
$db['pdo']['password'] = 'codeigniter';
$db['pdo']['database'] = 'codeigniter';
$db['pdo']['dbdriver'] = 'pdo';
* 사용하는 방법 (CI 그대로 사용)
//load the pdo db config
$this->pdo = $this->load->database('pdo', true);
//using the pdo config
$stmt = $this->pdo->query("SELECT * FROM users");
var_dump($stmt->result());
//using the pdo config with active record
$stmt = $this->pdo->get("users");
var_dump($stmt->result());
예제: http://codeigniter-kr.org/user_guide_2.1.0/database/examples.html
출처: http://codebyjeff.com/blog/2013/03/codeigniter-with-pdo
PHP 5.5에서부터는 Zend Opcache가 내장되어있다.
설정도 기본으로 사용이다.
이 판넬은 opcache의 상태를 보여준다.
https://gist.github.com/ck-on/4959032
간단하게 opcache 성능을 비교해봤는데
non opcache
- Requests per second: 98.23 [#/sec]
use opcache
- Requests per second: 190.80 [#/sec]
확실히 차이 난다.