[ php ] php 7.x에 대한 상수 정의( define( ) ) 부분에 관하여....... > php

본문 바로가기
사이트 내 전체검색

php

[ php ] php 7.x에 대한 상수 정의( define( ) ) 부분에 관하여.......

페이지 정보

작성자 웹지기 댓글 0건 조회 7,197회 작성일 18-12-18 11:00

본문

이제는 상수도 잘 사용해야 할 것 같습니다.


기존 php 5.x 이하버젼에서는 define('_GNUBOARD_', false); 일때는

defined('_GNUBOARD_') 출력하면 아무것도 뜨지 않았던 걸로 기억을 합니다.


7.X 버젼에서 define('_GNUBOARD_', false); 일때는

defined('_GNUBOARD_') 를 출력해보면 1이라는 숫자가 뜨는군요.

define('_TEST_',''); 빈값일때도 1을 출력하는군요


define('_GNUBOARD_', false);

echo "defined_GNUBOARD_ ::: ".defined('_GNUBOARD_')." ::: GNUBOARD ::: "._GNUBOARD_;

출력 : defined_GNUBOARD_ ::: 1 ::: GNUBOARD :::


define('_GNUBOARD_', true);

echo "defined_GNUBOARD_ ::: ".defined('_GNUBOARD_')." ::: GNUBOARD ::: "._GNUBOARD_;

출력 : defined_GNUBOARD_ ::: 1 ::: GNUBOARD ::: 1


define('_TEST_','');

echo "_TEST_ ::: ".defined('_TEST_')." ::: _TEST_ ::: "._TEST_;

출력 : _TEST_ ::: 1 ::: _TEST_ ::: 


상단에서 define('_INDEX_',TRUE); 와 같은 경우 index 페이지에서는

constant("_INDEX_") 의 값이 존재하지만,

서브페이지에서는 define('_INDEX_',TRUE);  또는 define('_INDEX_', FALSE);로 정의하지 않으므로

서브페이지에서 if(constant("_INDEX_")) 와 같은 구문은 오류가 발생한다.

true와 false의 구분은 defined('_INDEX_')의 값이 1이면 일단 상수에 대한 정의를 내린것으로 본다.

그래서 값이 1이 된다. 이러한 경우 CONSTANT() 함수의 사용은 가능하다.

하지만, 정의되지 않은 페이지에서 CONSTANT()함수를 사용하면 오류가 발생한다.

 

고로 상수를 정의 했다면 해당 상수명으로 조건문을 거시고 확인을 해야 할 것 같습니다.

그리고 정의되지 않은 상수사용도 더 조심해야 할 것 같습니다.

추천0 비추천0

댓글목록

등록된 댓글이 없습니다.

Total 82건 1 페이지
  • 82 [ php ] foreach() 오류 Invalid argument supplied for foreach()
  • Invalid argument supplied for foreach() 이러한 오류가 발생하는것은 foreach에 검색하는 변수의 값이 비어있기 때문. 어쩔수 없이 빈값인지 확인해야 한다. if(!emepty($변수)) { foreach($변수 AS $key) { echo "샬랄라"; } } 이런식으로 감싸줘야 ㅡㅡ;;
  • 웹지기 06-08 9086 0 0 댓글 0
  • 81 [ php ] php 7.2 count() 사용시 에러 조치
  • Severity: Warning --> count(): Parameter must be an array or an object that implements Countable 기존에는 빈값일 때 문제 없었는데, 7.2버젼에서는 빈값이면 0이 아니기 때문에 오류가 발생했다. if(count($num) > 0) { echo "test"; } 이부분에서 문제가 생겨서 다음처럼 수정을 했다. i...
  • 웹지기 06-08 8544 0 0 댓글 0
  • 80 [ php ] phpsocket.io 사용법
  • Start php start.php start for debug mode php start.php start -dfor daemon mode php start.php restart Stop php start.php stop Status php start.php status
  • 웹지기 05-08 15505 0 0 댓글 0
  • 79 [ php ] php에서 0값의 인식문제
  • $a = 0; if(isset($a) && $a!="") echo "0있어"; else echo "0없어"; 현재는 이러한 형태로 해놓은 상태이다.
  • 웹지기 03-21 6529 0 0 댓글 0
  • 78 [ php ] php error root write ( php 오류 root에 저장하기 )
  • php 오류를 root페이지에 저장하고 싶을 때 /home/test/public_html 위 폴더가 root라고 할 때 해당폴더에 저장할 파일명을 아래처럼 적어준다. <?php ini_set("log_errors", 1); ini_set("error_log", "/home/test/public_html/php-error.log"); ?> 간단하게 ...
  • 웹지기 02-21 6522 0 0 댓글 2
  • 77 [ php ] htmlspecialchars 와 json 의 관계
  • htmlspecialchars는 특수문자를 HTML 엔티티로 변환해준다. 수행되는 번역 Character Replacement &(ampersand) & "(double quote) ", unles...
  • 웹지기 12-04 7491 1 0 댓글 1
  • 76 [ php ] 위도 경도로 직선거리 계산하기
  • 첫번째 위도 경도, 두번째 위도 경도 를 통해서 직선거리 구하기 함수를 만들고 그에 해당하는 위도와 경로를 설정해서 거기를 환산해보면 된다. 값은 거리상의 km이다 소수점 아래 몇짜리까지 사용할 것인지는 알아서 판단하면 된다. <?php /** * Calculates the great-circle distance between two points, with * the Haversine formula. * @param float $latitu...
  • 웹지기 10-03 8158 0 0 댓글 0
  • 75 [ php ] php 객체지향 - 클래스 정의, 객체 생성, 접근, 생성자, 소멸자
  • 클래스 정의 - 객체는 class 키워드로 클래스를 정의 - 클래스의 정의에는 클래스이름(대문자 소문자 구분)과 속성 메소드가 포함 - 클래스는 데이터를 저장하는 속성 값을 가지고 있슴. - 데이터를 가공 / 처리하기 위한 메소드를 포함 객체 - 자바와 흡사하고 trait(특성)이 추가 되었슴. - 클래스 외부에서 클래스의 static(고정), constant(상수)에 접근할 때, 클래스 내부에서 상속 계층상의 프로퍼티나 메소드에 접근 할 때는 ->가...
  • 웹지기 05-16 6432 0 0 댓글 0
  • 74 [ php ] php 절차지향 객체지향
  • 절차지향(procedural programming) - 절차지향 프로그램은 위에서 아래로 흐르는 순차적인 처리 - 프로그램 전체가 유기적으로 연결되도록 만드는 프로그램 객체지향(OOP, object-oriented programming) - 객체지향 프로그램은 개발하려는 것을 기능별로 묶어 모듈화로 하드웨어가 중복 연산되지 않게 함 - 모듈을 재활용하는 방식이므로 하드웨어 처리량이 줄어듬 - 데이터와 절차를 하나를 덩어리로 묶어서 사용, 컴퓨터 부품을 하나씩 사서 조립하는것과 같음 ...
  • 웹지기 05-16 5814 0 0 댓글 0
  • 73 [ php ] 스코프 해결 연산자 / Scope Resolution Operator (::)
  • Scope Resolution Operator (Paamayim Nekudotayim이라고도 함) 또는 더 간단한 용어인 이중 콜론은 정적 , 상수 및 재정의 된 속성 또는 클래스의 메서드에 대한 액세스를 허용하는 토큰입니다 . 클래스 정의 외부에서 이러한 항목을 참조 할 때 클래스 이름을 사용하십시오. PHP 5.3.0부터 변수를 사용하여 클래스를 참조 할 수 있습니다. 변수의 값은 키워드가 될 수 없습니다 (예 : 자기 , 부모 및 정적 ). Paamayim Nekudotayim은 처음...
  • 웹지기 05-07 5557 0 0 댓글 0
  • 열람중 [ php ] php 7.x에 대한 상수 정의( define( ) ) 부분에 관하여.......
  • 이제는 상수도 잘 사용해야 할 것 같습니다. 기존 php 5.x 이하버젼에서는 define('_GNUBOARD_', false); 일때는 defined('_GNUBOARD_') 출력하면 아무것도 뜨지 않았던 걸로 기억을 합니다. 7.X 버젼에서 define('_GNUBOARD_', false); 일때는 defined('_GNUBOARD_') 를 출력해보면 1이라는 숫자가 뜨는군요. define('_TEST_',''); 빈값일때도 1을 출력하는군요 define('_GN...
  • 웹지기 12-18 7198 0 0 댓글 0
  • 69 [ php ] searialize(), unserialize() 배열의 직렬화(일렬화), 일반화, 많은 필드…
  • (PHP 4, PHP 5, PHP 7) serialize — 값의 저장 표현을 생성 설명 string serialize ( mixed $value ) 값의 저장 표현을 생성합니다. 이는 PHP 값을 저장하거나 전달할 때 자료형이나 구조를 잃어버리지 않게 합니다. 일렬화된 문자열을 다시 PHP 변수로 만드려면, unserialize()를 사용합니다. 인수 value 일렬화할 값. serialize()는 resource형을 제외한 모든 형을 다룹니다. 자기 자신을...
  • 웹지기 12-06 7355 0 0 댓글 0
  • 68 [ php ] 상대경로와 절대경로, 열린문서의 절대경로, 상대경로, url, uri 나타내기
  • 1. 절대경로 - 어떠한 웹페이지나 파일이 가지고 있는 고유한 경로를 말한다. - 예를들어 https://funyphp.com, C:\users\document\funyphp.jpg 등을 모두 절대 경로라고한다. - 다르게는 '그 위치'라는 개념이라고 말할 수 있는데 주소라고 생각하면 이해하기 더 쉽다. - 예를 들어 내가 만약 d:\file 또는 c:\file\img.jpg 등 절대 경로를 알고 있으면 그곳으로 바로 이동하거나 그곳에 있는 파일을 바로 실행 가능하다는 것. - 따라서, ...
  • 웹지기 11-07 28459 0 0 댓글 0
게시물 검색

회원로그인

접속자집계

오늘
3,958
어제
6,915
최대
33,828
전체
8,108,652

그누보드5
Copyright © funyphp.com. All rights reserved.