노력이 좋아서
<step46>'php_기초, 형변환'
zoaseo
2022. 5. 24. 17:04
1) ex01.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<h2>1+1</h2>
<?php
echo 1+1;
?>
<h2>2-1</h2>
<?php
echo 2-1;
?>
<h2>2*2</h2>
<?php
echo 2*2;
?>
<h2>문자열</h2>
<?php
echo 'hello'.'world'."<br/>"; //문자열 결합은 . 을 찍는다.
$int1 = 1000;
$float1 = 31.1133;
var_dump($float1);
$str1 = "green";
echo $int1."<br/>";
echo $float1."<br/>";
echo $str1."<br/>";
?>
</body>
</html>

2) ex02_variable.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- 변수는 지역변수 전역변수 정적변수 -->
<?php
$num = 50;
function varFunc(){
//지역변수 선언
$localvar = 10;
//함수내에서 사용할 전역변수를 명시
//전역변수 num에 접근 global
global $num;
echo "함수 내부에서 호출한 지역변수 localvar의 값은 {$localvar}입니다.<br>";
echo "함수 내부에서 호출한 전역변수 num의 값은 {$num}입니다.<br>";
echo "함수 내부에서 호출한 전역변수 num의 값은 {$GLOBALS['num']}입니다.<br>"; //다른 방법
}
varFunc();
echo "함수밖에서 호출한 지역변수 localvar의 값은 {$localvar}입니다.<br>";
//정적변수 static
function counter(){
static $count = 0; //이전 값 유지
echo "함수 내부에서 호출한 static변수 count의 값은 {$count}입니다.<br>";
$count++;
}
counter();
counter();
counter();
?>
<script>
function myFunc(){
let count = 0;
console.log(count);
count++;
}
myFunc();
myFunc();
myFunc();
</script>
</body>
</html>

3) ex03_constant.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<?php
//define()함수
define("PHP","PHP수업에 잘 오셨습니다.!<br>",true); //대소문자 구분
echo PHP;
echo php;
//상수는 선언 후 어디에서라도 참조할 수 있음.
function defFunc(){
echo ABC; //정의 전에 사용
define("ABC","하하하하하하하");
echo "<br>".ABC."<br>";
}
defFunc();
echo ABC;
?>
</body>
</html>

4) ex04_datatype.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<?php
echo "integer타입의 크기는".PHP_INT_SIZE."바이트입니다.<br>";
echo "integer타입이 표현할 수 있는 가장 큰 수는".PHP_INT_MAX."입니다.<br>";
$int1 = 1000;
$float1 = 5.123456;
var_dump($int1);
var_dump($float1);
echo "<br>";
//String
$str1 = "안녕하세요";
echo $str1."<br>";
echo strlen($str1)."<br>";
$str2 = "green";
echo $str2."<br>";
echo strlen($str2);
echo "<br>";
//Array
$day = array("일요일","월요일","화요일","수요일","목요일","금요일","토요일");
echo $day[1]."<br>";
var_dump($day);
//연관배열
$arr = array("name" => "green","age" => 30);
echo "<br>".$arr["name"]."<br>";
var_dump($arr);
echo "<br>";
$fruits = ['🍌','🍇','🍉'];
echo $fruits.'<br>';
var_dump($fruits);
echo "<br>";
echo $fruits[0].'<br>'; //인덱스로 접근
$arr2 = ['key1'=>'사과','key2'=>'오렌지','key3'=>'자두'];
echo $arr2['key1'].'<br>'; //키로 접근
$myStr1 = 'abc';
$myStr2 = 100;
$myStr3 = true;
$myStr4 = NULL;
echo gettype($myStr1).'<br>';
echo gettype($myStr2).'<br>';
echo gettype($myStr3).'<br>';
echo gettype($myStr4).'<br>';
echo gettype($arr2).'<br>';
echo (int)1.12345.'<br>';
echo (int)"1020".'<br>';
echo (int)"그린".'<br>';
echo (bool)"그린".'<br>';
$num = 12345;
$num2 = 0;
echo (string)$num.'<br>';
echo (bool)$num.'<br>';
echo (bool)$num2.'<br>';
?>
</body>
</html>
