Programming/PHP

반응형
Programming/PHP

신기한 PHP의 세계

개요 PHP 4.0 └ PHP 3.0 + 프레임워크(Zend 엔진) └ 모듈화 및 웹 서버 인터페이스 부문이 추가되었다. └ 이식성 측면이 상향되었다. PHP 5.0 └ 객체지향 문법이 추가되었다. ( PHP 3.0/4.0 버전에서는 Class를 만들고, 상속받는 기능 외엔 없었음) └ xml 지원이 강화되었다. └ SQLite 등 sql이 확장되었다. └ Tidy 확장을 지원하였다. (이를 통해 HTML 문서를 표준에 맞게 관리할 수 있음) PHP의 장점 ① 무료다. (고급 기술은 유료지만..) ② 플랫폼에 독립적이다. ③ PHP 내부 소스 코드를 수정할 수 있다(고수용) ④ 웹 개발에 적합하다(C, Java는 애시당초 웹 개발 용이 아니였다.) ⑤ 에러를 무료로 해결이 가능하다(?) ⑥ 대중적이다. ..

Programming/PHP

간단한 파일 업로드 테스트

$_Files 안에 뭐가 들어있는지 먼저 확인해보자 var_dump($_FILES); // name : 실제 이름 // type : 이미지, png타입이다 // tmp name : 임시 이름 - 서버의 임시 디렉토리에 들어가게 됨 // error : 에러 // size : byte단위 크기 파일을 업로드하는 부문이다. test.php // 에러 출력 -> 트러블슈팅 편하게 하는 옵션 ini_set("display_errors", "1"); // 임시 디렉토리에서 파일 디렉토리로 옮기는 변수 // Window 운영체제의 경우, 끝에 \\를 붙여야한다. $uploaddir = 'C:\Bitnami\wampstack-8.0.5-0\apache2\htdocs\upload\files\\'; // 보안을 위해 ba..

Programming/PHP

Linux 명령어(?) 사용

pwd, cd // 현재 디렉토리 확인 echo getcwd().' '; // 위치 이동 chdir('../'); echo getcwd().' '; ls //현재 디렉토리 사용 $dir = './'; //현재 디렉토리에 대한 파일들 출력 $file1 = scandir($dir); // 일반 $file2 = scandir($dir, 1); // 1 옵션 : 정렬순서 바꾸기 //출력 print_r($file1); print_r($file2); mkdir //폴더만들기 mkdir("1/2/3/4",// 디렉토리명 0700, //권한 true //첫 번째 인자의 경로가 만약 없다면 만들어줄까? );

Programming/PHP

파일 입출력

[php file function] 원본 파일이 존재해야 한다. 복사하기 $file = 'readme.txt'; $newfile = 'test.txt.bak'; // 참일경우 성공, 거짓일경우 실패 // 원본파일 복사할파일 if(!copy($file, $newfile)){ echo "failed to copy $file...\n"; } 삭제하기 // 삭제 unlink('test.txt.bak'); 읽고 쓰기 (fopen도 있음 - https://www.php.net/manual/en/function.fopen) $file = './readme.txt'; //읽기 echo file_get_contents($file); //url로 읽을 수도 있음. //쓰기 file_put_contents($file, 'h..

Programming/PHP

Composer 설치

Composer은 라이브러리들의 의존성을 관리해주는 프로그램이다. https://getcomposer.org/download/ 에서 다운로드받을 수 있다. 설치도중 C:\Bitnami\wampstack-8.0.5-0\php\php.exe 파일을 넣어주었다. composer.phar 파일이 생김 CMD에서 실행한다. 이후 CMD에 echo @php "%~dp0composer.phar" %*>composer.bat 명령어를 쳐주면, 앞에 php라고 안써줘도 실행이 가능해진다. (https://getcomposer.org/doc/00-intro.md) - 경로에 composer.bat 파일이 생성된다. 그리고 https://packagist.org/ 에 접속하여 Search package 부분에서 markdo..

Programming/PHP

Include / Require

다른 파일에서 불러올 때 사용한다. one.php two.php 둘의 차이점은 파일을 찾을 수 없거나 권한 오류가 날때 warning(include)과 error(require)로 나뉜다는 점이다. 관련글 (Include + Require 에러 처리) 신기한 PHP의 세계 개요 PHP 4.0 └ PHP 3.0 + 프레임워크(Zend 엔진) └ 모듈화 및 웹 서버 인터페이스 부문이 추가되었다. └ 이식성 측면이 상향되었다. PHP 5.0 └ 객체지향 문법이 추가되었다. ( PHP 3.0/4.0 버전에서는 Cla conative.tistory.com

Programming/PHP

배열

기본적인 사용 $class = Array("hello", "world"); $class1 = ["Hello", "World"]; echo $class[0];//hello echo $class1[0];//Hello function hello(){ return ['hello', 'world']; } $tmp = hello(); echo $tmp[1]; //world //더 쉽게. echo hello()[1]; //world - php 5.4 이후버전부터 사용 가능 반복문 사용 function uit(){ return ['a', 'b', 'c', 'd', 'e', 'f']; } $members = uit(); for($i = 0; $i < count($members); $i++){ // Uppercase fi..

Programming/PHP

조건문 / 반복문 / 함수

기본적으로 알던 내용과 동일하다. GET으로 들어온 Query값에 따라 작동방식이 다르다. [value == 1] 0~4를 화면에 출력하며 hello 함수를 출력한다. 이때, 함수의 인자값이 없으므로 01234hello none13이 출력된다. [value != 1] world변수에 문자열을 넣고, hello 함수를 출력한다. 이때, 함수의 인자값이 존재하여 hello world13이 출력된다.

Conative
'Programming/PHP' 카테고리의 글 목록