[php] php 정리

chooing·2022년 9월 4일

php

목록 보기
1/1
post-thumbnail

변수

  • isset(변수) 변수의 값 존재 유무(boolean)
    - null => false
  • empty(변수) 변수의 값이 비어있는지 체크(boolean)
    - null, " ", 0, [ ] => true

배열

  • array(value1, value2, ...)
  • array(key=>value, key=>value, ...)

함수

  • count 배열 길이
	$fruits = array("🍋","🍎","🥝");
	echo count($fruits);    // 3
  • list 구조분해할당
$food = "🍙,🍕,🍱,🍧";
list($rice, $pizza, $lunchBox, $icecream) = explode(",", $food);
echo $pizza;        // 🍕
echo $icecream;     // 🍧

문자열

  • 문자열 합치는건 .
  • 큰따옴표 안에 나오는 변수는 값으로 출력
  • 작은따옴표 안에 나오는 변수는 변수가 출력된다.
	$a = "나는"."문자열이다";
    echo $a."!!!";

함수

  • substr 문자열 자르기
$url = "https://velog.io";
echo substr($url, 0, -1);
  • explode 문자열 배열화
$food = "🍙,🍕,🍱,🍧,🍺";
$foods = explode(",", $food);
echo $foods[0];            // 🍙
echo $foods[1];           // 🍕
  • strtoupper 문자열 대문자 / strtolower 문자열 소문자
  • 문자 바꾸기 str_replace(전체),substr_replace(부분)
  • strstr 특정 문자 찾기

??(null 병합 연산자)

변수??기본값;

  • 변수가 null이면 기본값을 반환
  • 변수가 null이 아니면(값이 있으면) 기본값을 반환
  • 즉, 값을 받았는데 값이 들어왔으면 그 값을 넣고,
    값이 들어오지 않았으면(null이면) 내가 설정해놓은 기본값(default)을 넣을 때 쓴다.

FILEDIR

  • dirname(DIR) : 현재경로의 바로 전 디렉토리
  • DIR : 파일위치에 대한 절대경로
  • dirname(FILE) : 파일위치에 대한 절대경로
  • FILE : 파일명을 포함한 파일위치에 대한 절대경로

[class] public, private, protected

  • public 클래스내, 클래스외의 어디에서라도 접근 가능
  • protected 같은 클래스 및 자식클래스에서 접근 가능
  • private 같은 클래스안에서만 접근 가능
class Food{
	public $air = "public 공기 무료 시식";
    protected $restaurant ="protected 식당에서 먹기";
    private $house ="private 집밥 먹기";
}

$food = new Food();
echo $food -> air;           // public 공기 무료 시식
echo $food -> restaurant;    // error
echo $food -> house;        // error

class Eat extends Food{
	function eatAir(){
        echo $this->air;
    }

    function eatRestaurant(){
        echo $this->restaurant;
    }

    function eatHouse(){
        echo $this->house;    
    }
}

$eat = new Eat();
$eat -> eatAir();           // public 공기 무료 시식
$eat -> eatRestaurant();    // protected 식당에서 먹기
$eat -> eatHouse();        // error

@, &, ::, ->

  • @ 실행 시, 에러가 나도 에러가 출력되지 않음
	@moving()      // moving()이 에러가 발생해도 출력되지 않음

php8 부터 사라짐

  • & 해당 변수를 가져옴
	$a = 20;
    echo $a."<br>";       // 20
    
    $b = &$a +5;
    echo $b."<br>";       // 25
    
    $a = 10;
    echo $a."<br>";       // 10
    echo $b."<br>";       // 15
  • :: new 라는 지시자로 class를 미리 객체화 시켜놓지 않고 사용할 때, class 내의 static 변수에 접근
  • -> new class이름 으로 인스터스 객체를 만들고, class 내의 변수에 접근
class Apple {	
	public static $color = 'red';
    public static function viewing(){
    	echo "🍎";
    }
	public $nameKr = '사과';
    public function buying(){
    	echo "💰";
    }
}

echo Apple::$color."<br>";          // red
echo Apple::viewing()."<br>";       // 🍎   

$apple = new Apple();
echo $apple->nameKr."<br>";         // 사과
echo $apple->buying()."<br>";       // 💰
profile
멋찐 프론트엔드 개발자가 되기 위해 공부 중입니다

0개의 댓글