[php]

Grace Goh·2023년 3월 10일
0

PHP

목록 보기
7/19

XAMPP 설치

  • 웹 서버 (Apache)
  • DB 서버 (MariaDB) 로서의 역할
  • PHP (컴파일러) 설치

php에서 더 작성할 문법이 없을 때 (php문으로만 구성된 경우)
아래와 같이 마지막 부분은 생략이 가능하다.

<?php


// ?>

?> 후 스페이스 한 칸이 들어가면 이상반응이 생길 수 있다.


<html>
<head>
	<title>Document</title>
</head>
<body>
	<h1>php 공부</h1>
    <a href="#">링크 이동하기</a>

	<?php
    	// $변수명 으로 선언한다.
		$a = 1;

		echo "문장이 끝나면 세미콜론이 반드시 필요하다.";
        
        /*
        html 주석은 'f12 소스보기'시 보이지만 php 주석은 보이지 않는다.
        Server-Side Script기 때문, Server-Side에서 처리된 후 보내진다.
        웹 서버 -> 사용자 브라우저로 주석은 애초에 보내지 않는 것.
        소스가 보이지 않기 때문에 보안상 좋다.
        
        cf. Client-Side Script, Markup Language : JS, html..
        */
	?>

	<script>
		// JS 변수 선언
		let a = 1;

		document.write('echo는 JS의 document.write와 같다.');
	</script>
</body>
</html>



1.php1.html의 결과는 동일하다.

# localhost/1.php

<?php

$txt = "piger";
echo "I love $txt!";

I love piger!


# localhost/1.html

I love piger!

I love piger!


전역global변수 / 지역local변수

# <?php

    $x = 5; // 전역global변수는
    
    function myTest() {
        echo "변수 x의 출력값 $x"; // 펑션 안에서는
        echo "<br>";
    }

    myTest(); // 가져올 수가 없다.

Warning: Undefined variable $x in C:\xampp\htdocs\1.php on line 15
변수 x의 출력값


# <?php

    $x = 5; // 전역global변수지만

    function myTest() {
    	global $x; // 이렇게 펑션 안에서 정의해주면*
        $x++; // 1 증가
    
        echo "변수 x의 출력값 $x";
    }

    myTest(); // 펑션 안에서도 6 출력
    
    echo "변수 x의 출력값 $x"; // 외부에서도 6 출력

변수 x의 출력값 6
변수 x의 출력값 6

* JS의 경우, global $x;로 정의해주지 않더라도 자동으로 연계한다.

# <?php 

    $x = 5; // 전역변수

    function myTest() {
        $x = 3; // 펑션 안에서만 사용되는 지역변수
        $x++; // 1 증가
        
        echo "변수 x의 출력값 $x";
        echo "<br>";
    }

    myTest(); // 내부 4

    echo "변수 x의 출력값 $x"; // 외부 5



# <?php

    $x = 5;

    function myTest() {
        $x = 3; // 지역local변수는
        
        echo "변수 x의 출력값 $x"; // 펑션 안에서 출력된다.
        echo "<br>";
    }

    myTest(); 

    echo "변수 x의 출력값 $x"; // 함수 외부에서는 전역변수만 출력된다.

변수 x의 출력값 3
변수 x의 출력값 5


# <?php

    function myTest() {
        $x = 3; // 지역local변수
        $x++;
        
        echo "변수 x의 출력값 $x"; // 4
        echo "<br>";
    }

    myTest(); // 4

    echo "변수 x의 출력값 $x"; // 출력 안 됨

변수 x의 출력값 4
Warning: Undefined variable $x in C:\xampp\htdocs\1.php on line 22
변수 x의 출력값


# <?php

    $x = 5; // 전역변수

    function myTest() {
        global $x; // $x=5 안에서도 쓰겠다 선언
        $x++;
        
        echo "변수 x의 출력값 $x"; // 6
        echo "<br>";    
    }

    myTest(); // 6

    echo "변수 x의 출력값 $x"; // 6

변수 x의 출력값 6
변수 x의 출력값 6

profile
Español, Inglés, Coreano y Python

0개의 댓글