- PHP = Hypertext Preprocessor
https://www.w3schools.com/php/default.asp
* 레퍼런스
https://www.w3schools.com/php/php_ref_overview.asp
//==========
* 이름
- 키워드, 함수 등 대소문자를 불문이지만,
- 변수!!는 대소문자를 구분!!
- "" 안의 변수는 변수내용이 출력됨
- '' 안의 내용은 그대로 출력
<?php
$var1 = 1;//변수는 '$'가 붙는다
eCHO $var1; //정상 출력, 함수는 대소문자 불문
echo $vAR1; //출력 안됨, 변수는 대소문자 구분
//
$txt = "YOU";
echo "love $txt";//출력 = love YOU
echo 'love $txt';//출력 = love $txt
//
$x = 5985;
var_dump($x); // 출력 = int(5985)
?>
* 상수
- 이름에 대소문자 구분
define("GREETING", "Welcome to W3Schools.com!");
echo GREETING;
- 대소문자 구분 안하기
define("GREETING", "Welcome to W3Schools.com!", true);
* 연산자
** : 제곱
2**3 = 8
.= : 문자열 합치기
- $x=a; $y=b; $x.=$y; echo $x; //출력=ab
//================
* 자동 전역변수 Superglobals
https://www.w3schools.com/php/php_superglobals.asp
$GLOBALS
$GLOBALS['x'] =1;//사용자가 설정
$_SERVER : 서버와 웹페이지 정보
$_REQUEST : GET 또는 POST 방식으로 넘어온 변수
$_POST
$_GET
$_FILES : 파일 업로드 관련
$_ENV : 환경설정, 사용자가 설정
$_COOKIE : 쿠키
$_SESSION : 세션
//============
* 특수문자 변환
$new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES); //변환
echo $new; // <a href='test'>TEST</a>
echo "<br><br>";
echo $new2 = htmlspecialchars_decode($new) ;//복원
//======================
< include, require 차이 >
* include()
- 문서 포함시키기, htm, php 등
- Error발생시 Warning을 일으킨다
* include_once()
- 동일한 문서는 한번만 include한다. 중복 방지
* require()
- require()는 실패시에 치명적인 E_ERROR 등급 오류가 발생(실행이 중단)
그외는 include()와 동일
* require_once()
- 중복없이 한번만 require()
//========================
* 쿠키
https://www.w3schools.com/php/php_cookies.asp
- 읽기
$coo = $_COOKIE[$cookie_name];
- 설정
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
- 삭제
setcookie("user", "", time() - 3600);
//========================
* 세션
<?php
session_start();//세션 시작
?>
<!DOCTYPE html>
<html>
<body>
<?php
//세션 다루기
//$var1 = $_SESSION['name']='var';
if( isset($_SESSION['name'])){
echo "세션 설정";
echo $_SESSION['name']='val';
}else{
echo "세션 설정 안됨";
}
//===========
//세션 삭제
session_unset();//세션 변수 삭제
session_destroy();//세션 삭제
?>
</body>
</html>
//=================
< 데이타베이스 >
https://www.w3schools.com/php/php_mysql_intro.asp
<?php
$servername = "localhost";
$username = "root";
$password = "secret";
$dbname = "test";
$table = "users";
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully<br>";
$sql = "SELECT id, name FROM users";
$sql = "SELECT t.id AS tid, t.task, u.id AS uid, u.name FROM tasks AS t , users AS u";
//$sql = "SELECT no, task FROM tasks UNION (SELECT id, name FROM users)";
//$sql = "SELECT * FROM tasks AS t LEFT JOIN users ON (users.id = t.user_id)";
echo $sql."<br>";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
// output data of each row
while($row = mysqli_fetch_assoc($result)) {
//echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
//echo $row["t.no"]." - ".$row["task"].""."<br>";
//echo $row[0]." - ".$row[1].""."<br>";
print_r( $row);echo "<br>";
}
} else {
echo "0 results";
}
mysqli_close($conn);
?>
'Code > PHP' 카테고리의 다른 글
라라벨 DB 빌더 (0) | 2018.11.16 |
---|---|
라라벨 컬렉션 (0) | 2018.11.16 |
[라라벨] POST 예제 (0) | 2018.10.14 |
[라라벨] PHPUnit (2) - HTTP 웹 테스트 예제 (0) | 2018.10.11 |
[라라벨] PHPUnit 설치, 기본 사용법 (0) | 2018.10.11 |