[CyberSecurityLearning 45] PHP 기본 + 변수, 연산자, 흐름 제어 문

목차

PHP 개요

PHP 런타임 환경 설치

웹 원칙에 대한 간략한 소개

기본 PHP 구문

풍모:

명령 구분자 [;]

주석 (C 언어와 유사)

간단한 PHP 문

PHP 구문 오류 :

변하기 쉬운

변수 선언

초기화

할당

[=]  

참조 할당 $ c = & $ a

변수 해제

변수 이름 지정

가변 변수

가변형

일정한

미리 정의 된 상수

운영자

산술 연산자 (코드 참조)

논리 연산자

연산자 우선 순위

비교 연산자

할당 연산자

산술 할당 연산자 ¶

기타 할당 연산자 ¶

기타 연산자

흐름 제어 문

순차적 실행

지점 실행

단방향 분기

양방향 분기

다 방향 분기

루프 문

동안

잠시만

for (好!)

특수 흐름 제어문

구구단 구구단


PHP 개요

-PHP는 프로그래밍 언어로, PHP의 주요 목적은 웹 개발자가 동적 페이지를 빠르게 작성할 수 있도록하는 것입니다
.-간단히 말하면 PHP는 주로 다양한 유형의 웹 사이트 프로그램을 개발하는
데 사용됩니다. 동적 웹 페이지, 문자열 처리, 동적 출력 이미지, 서버 측 파일 처리, 데이터베이스와 상호 작용, 세션 추적, XML 파일 처리, 많은 네트워크 프로토콜 지원 및 서버 측의 기타 관련 작업을 생성합니다!
-PHP는 미리 컴파일 할 필요가없고 서버 측에서 실행 되는 해석 된 스크립팅 언어입니다 !
-PHP는 Windows 및 Linux와 같은 다양한 운영 체제에서 실행할 수 있습니다!

웹 사이트 개발에 특별히 사용되는
스크립트 접미사 .php 는 HTML 언어와 혼합 될 수 있으며 스크립트 접미사는 여전히 .php (HTML 언어는 PHP 코드로도 출력 가능) 해석 언어이며 컴파일 및 직접 실행하지 않습니다.

약한 유형

PHP 실행 환경 :
Windows : phpstudy
Linux : 별도 설치 (시스템에 포함되지 않음)

PHP 런타임 환경 설치

Apache + PHP + MySQL은 인기있는 PHP 용 생활 환경입니다.

램프

웹 원칙에 대한 간략한 소개

1. 브라우저를 엽니 다.
2. URL 주소를 입력합니다.
3. 웹 사이트 콘텐츠를 표시합니다.

기본 PHP 구문

PHP 언어 태그

      시작 태그 <? php

      종료 태그?>

풍모:

1. <? php?> 이것은 PHP 모드로 들어가는 것을 의미하며, 시작과 끝 밖의 내용은 PHP 파서에 의해 무시됩니다.

2. HTML 코드에 직접 삽입 할 수 있으며 HTML 코드의 어느 곳에 나 삽입 할 수 있습니다.

3. HTML 문서에 원하는 수의 PHP 태그를 삽입 할 수 있습니다.

4. 파일 끝에있는 PHP 코드 종료 태그는 생략 할 수 있습니다. 경우에 따라 생략하는 것이 좋습니다.

명령 구분자 [;]

PHP 문은 세미콜론으로 끝나야합니다 (권장).

주석 (C 언어와 유사)

한 줄 주석 //

여러 줄 주석 / * * /

노트:

PHP 코드의 주석은 브라우저의 소스 코드에 표시되지 않습니다.

PHP 운영 환경은 서버이고 브라우저에서 보는 것은 PHP 코드를 실행하는 PHP 엔진의 실행 결과입니다.

PHP 엔진이 PHP 코드를 해석하면 주석이 자동으로 필터링됩니다.
HTML 코드 클라이언트가 소스 코드를 볼 수있는 이유는 무엇입니까?
HTML 런타임 환경은 브라우저이기 때문입니다!

간단한 PHP 문

1 、 phpinfo ();

2. 에코는 간단한 변수를 출력하는 데 사용됩니다.

3. var_dump (); 변수 값 및 변수 유형을 출력하는 데 사용됩니다.

PHP 구문 오류 :

오류는 스크립트 실행을 종료합니다.
경고 만 표시하고 실행에는 영향을주지 않습니다.
알림 만 표시하고 실행에는 영향을주지 않습니다.

변하기 쉬운

변수 선언

변수를 선언 할 필요가 없지만 초기화

초기화

처음으로 변수에 값을 지정하거나 변수의 기본값을 지정하십시오.

할당

[=]  

실험 지침에 따르면 : PHP 스크립트는 순차적으로 실행됩니다.

참조 할당 $ c = & $ a

$ a에 별칭을 제공하는 것과 동일하며 $ c의 값이 변경되고 $ a도 변경됩니다.

<?php
$a=10;
$b=$a;
$b=$b+1;
echo $a;  //10
echo "|";
echo $b;  //11
echo "<hr />";
$c=&$a; //$a和$c实际上指向的是同一块内存空间(相当于给$a起了一个别名)
$c=$c+1;
echo $a; //11
echo "|";
echo $c; //11
?>

변수 해제

unset ()

<?php
echo "This is var.php";
echo "<hr />";
echo "<span style='color:pink;background-color:blue'>123</span>";
?>

//一个页面中可以插入多个PHP标记(不能混用)
<hr />

<?php
//PHP在使用变量的时候不需要进行变量声明,
//如果一个变量没有初始化,内存中就没有这个变量。
echo $name;
$name="AJEST";
echo "<br />";
echo $name;
echo "<br />";
unset($name); //释放了变量
echo $name;

?>

 

변수 이름 지정

   @ $ 기호로 시작

   @ 대소 문자 구분

   @ 문자 | 숫자 | 밑줄, 숫자로 시작할 수 없음

$ name1
$ my_name
$ _my_name
$ 1_name 错误

   @ PHP 키워드를 변수 이름으로 사용하지 마십시오.

가변 변수

<?php
$name="hello";
$$name="world";
echo $name;  //输出hello
echo "<br />"
echo $$name; //world
echo $hello;//实际上$hello是$$name
?>

 

가변형

부울 유형 
true false, 기타는 true로 간주됩니다.

다음 내용은 모두 허위로 간주됩니다.

부울 값 false
0
부동 소수점 유형 0.0
빈 문자열 및
멤버가없는 문자열 0 배열
NULL

var_dump (); 변수 값 및 변수 유형을 출력하는 데 사용됩니다.

int는 정수를 저장합니다.

부동 소수점 3.14

문자열의 정의 :

@ ''

@ ""

@ 구분자

노트:

@ 작은 따옴표는 작은 따옴표로 정의 된 문자열에 표시되어 [\]

에서는 그대로 @single 따옴표 문자열에 의해 정의 된 상기 [$] 기호가 출력된다

에서는 @double 따옴표 문자열에 의해 정의 [$는 가변의 시작이고, 전체 변수 이름} {표로

@single 및 큰 따옴표로 정의 된 문자열에 입력 된 특수 문자는 [ ' , " , $ ...] 이스케이프되어야합니다.

@ 구분 기호시작과 끝에는 공백 문자와 주석을 포함한 문자가 없어야합니다.

정렬

주제가 말하지 않음

 

일정한

일정한 금액

定义 define ( "이름", "GGG");

직접 사용하세요

미리 정의 된 상수

상수 이름 상수 값
__FILE__ 현재 파일 이름 (경로가있는 파일 이름)
__LINE__ 현재 줄 수
__FUNCTION__ 현재 함수 이름
__CLASS__ 현재 클래스 이름
__METHOD__ 현재 개체 메서드 이름
PHP_OS UNIX 또는 WINNT
PHP_VERSION 현재 PHP 서버 버전
DIRECTORY_SEPARATOR \ 또는 / 운영 체제에 따라 디렉토리의 구분자를 결정하기 위해

 

운영자

산술 연산자 (코드 참조)

모듈로는 나머지를 취하는 것입니다.

논리 연산자

PHP 매뉴얼

아니!

및 또는 &&

或 또는 ||

Xor xor는 true와 다르고 false와 동일합니다.

AND 연산은 OR 연산 보다 우선 순위가 높습니다 .

할당 연산자는 논리 연산자보다 우선 순위가 높습니다.

연산자 우선 순위

괄호 사용은 필요하지 않더라도 연산자 우선 순위와 연관성에 의존하지 않고 괄호 쌍을 통해 작업 순서를 명확하게 나타내며 일반적으로 코드의 가독성을 높일 수 있습니다.
다음 표 에는 연산자가 우선 순위 에 따라 내림차순으로 나열되어 있습니다. 동일한 행의 연산자는 동일한 우선 순위를 가지며, 이때 조합 방향에 따라 평가 순서가 결정됩니다.

연산자 우선 순위
조합 방향 운영자 추가 정보
해당 없음 clone new 복제  및  신규
오른쪽 ** 산술 연산자
해당 없음 ++ -- ~ (int) (float) (string) (array) (object) (bool) @ 유형 , 증가 / 감소
왼쪽 instanceof 유형
해당 없음 ! 논리 연산자
왼쪽 * / % 산술 연산자
왼쪽 + - . 산술 연산자  및  문자열 연산자
왼쪽 << >> 비트 연산자
아니 < <= > >= 비교 연산자
아니 == != === !== <> <=> 비교 연산자
왼쪽 & 비트 연산자  및  참조
왼쪽 ^ 비트 연산자
왼쪽 | 비트 연산자
왼쪽 && 논리 연산자
왼쪽 || 논리 연산자
오른쪽 ?? 널 병합 연산자
왼쪽 ? : 삼항 연산자
오른쪽 = += -= *= **= /= .= %= &= |= ^= <<= >>= ??= 할당 연산자
해당 없음 yield from 수익률
해당 없음 yield 수율
해당 없음 print 인쇄
왼쪽 and 논리 연산자
왼쪽 xor 논리 연산자
왼쪽 or 논리 연산자

 

비교 연산자

비교 연산자
이름 결과
$ a == $ b 같은 true, 유형 변환 후 $ a가 $ b와 같으면.
$ a === $ b 합동 true, $ a가 $ b와 같고 유형도 동일한 경우.
$ a! = $ b 같지 않은 true, 유형 변환 후 $ a가 $ b와 같지 않은 경우.
$ a <> $ b 같지 않은 true, 유형 변환 후 $ a가 $ b와 같지 않은 경우.
$ a! == $ b 같지 않음 true, $ a가 $ b와 같지 않거나 유형이 다른 경우.
$ a <$ b 작고 true, $ a가 $ b보다 작은 경우.
$ a> $ b 보다 true, $ a가 $ b보다 큰 경우.
$ a <= $ b 작거나 같음 true, $ a가 $ b보다 작거나 같은 경우.
$ a> = $ b 크거나 같음 true, $ a가 $ b보다 크거나 같은 경우.
$ a <=> $ b 우주선 연산자 (조합 비교 연산자) $ a가 $ b보다 작거나 같거나 크면 각각 0보다 작거나 같거나 큰 int 값을 반환합니다.

当两个操作对象都是 数字字符串, 或一个是数字另一个是 数字字符串, 就会自动按照数值进行比较。 此规则也适用于 switch 语句。 当比较时用的是 === 或 !==, 则不会进行类型转换——因为不仅要对比数值,还要对比类型。

比较参与运算的单元是否相同,相同为真,不同为假

<?php
var_dump(0 == "a"); // 0 == 0 -> true
var_dump("1" == "01"); // 1 == 1 -> true
var_dump("10" == "1e1"); // 10 == 10 -> true
var_dump(100 == "1e2"); // 100 == 100 -> true

switch ("a") {
case 0:
    echo "0";
    break;
case "a": // never reached because "a" is already matched with 0
    echo "a";
    break;
}
?>

赋值运算符

算术赋值运算符 ¶

例子 等同于 操作
$a += $b $a = $a + $b 加法
$a -= $b $a = $a - $b 减法
$a *= $b $a = $a * $b 乘法
$a /= $b $a = $a / $b 除法
$a %= $b $a = $a % $b 取模
$a **= $b $a = $a ** $b 指数

其他赋值运算符 ¶

例子 等同于 操作
$a .= $b $a = $a . $b 字符串拼接

 

其他运算符

$a= 10>20 ? 10:20(三元运算符)

``    将字符串当作命令执行(不是单引号,是Tab上面的那个键)

@   屏蔽提示,警告

<?php
$a=10<20?10:20;
echo $a;
echo "<hr />";
echo `ping www.baidu.com`;
?>

<hr />

<?php
echo `whoami`;
echo "<hr />";
echo @$name;  //直接写$name会报Notice,在前面加一个@,屏蔽警告、提示
?>

流程控制语句

顺序执行

PHP代码执行的时候,依次顺序执行

分支执行

单向分支

if(判断条件){执行语句块}

双向分支

if(判断条件){执行语句块1}else{语句块2}

多向分支

if(判断条件){执行语句块1}elseif{语句块2}elseif{语句块3}....

elseif

    switch

       case

       default

case后面的语句是不需要用大括号括起来的!

循环语句

while

   当满足条件时,执行

   计数器,变量

   判断条件

do while

    先执行再判断

for(好!)

特殊流程控制语句

break;  跳出本层循环

break 2;  跳出两层循环

continue; 跳过本次循环

die()    结束本次脚本执行

exit()   结束本次脚本执行

九九乘法表

 

추천

출처blog.csdn.net/Waffle666/article/details/114367027