목록Language/PHP (17)
미니옵빠의 code stubs
PHP를 근본 없는 언어라고 평하는 경우가 있는데, 일부 동의함. 표현을 점잖게 하자면 언어 설계 및 구조 불안정이라고 할 수 있고, 함수 이름에 일관성이 없거나 비슷한 함수들의 사용법이 상이할 때 몸으로 느낄 수 있다. 예) array_splice는Description 에 return 한다는 말이 없음. 그러니 입력값이 바뀐다라고 추정해야 함?Return Values 있다고 적혀있음Example 보면 return 없이 쓰며, 실행 후 입력값이 바뀌어 있음. Example 처럼 쓰는게 정석 array_slice의 description과 Example 을 보면 차이를 알 수 있음.이 함수는 return 값을 제공하기 때문에 비슷한 함수명으로 사용법을 추정해서 사용하다가 낭패를 볼 수 있다. (JS 등에서 ..
worker MPM 기반으로, thread 기반으로 동작하게 하려면 관련 코드들이 모두 thread safe 해야 함 - PHP는 다양한 모듈의 집합이고- 이 모듈들이 전부 thread safe 하지 않음 따라서 안전하게 prefork를 사용하며, 이게 정석처럼 되어 있음. 라이브러리의 thread-safe 여부 (일부): http://php.net/manual/kr/faq.obtaining.php#faq.obtaining.optional
Linux 환경에 GD 라이브러리 설치 시, Apache 시작 시점에 Starting httpd: httpd: Syntax error on line 206 of /etc/httpd/conf/httpd.conf: Cannot load /usr/lib64/httpd/modules/libphp5.so into server: /usr/lib64/httpd/modules/libphp5.so: undefined symbol: zend_ini_boolean_displayer_cb 라는 메시지와 함께 오류가 가는 경우 1. yum install 로 - php-devel.x86_64- php-gd.x86_64 를 설치 (참고로 설명은 64bit 기준임) 2. PHP 재컴파일- make clean 으로 예전에 컴파일 했던..
$xml = @simplexml_load_string($body, "SimpleXMLElement", LIBXML_NOCDATA | LIBXML_NOBLANKS) or die("Error: Cannot create object");$json = json_encode($xml);$obj = json_decode($json, TRUE); * LIBXML_NOCDATA 를 설정하지 않으면 cdata 로 묶인 텍스트 파일이 파싱(merge)되지 않는다.* simple xml 객체를 json 객체로 변경하고, json 객체를 다시 php 객체로 (여기서는 TRUE 옵션으로 array - 연관배열로 변경) 변경하는 형태
PHP 설치 시 mysql 사용 설정 1. mysql 을 rpm 등으로 기본 설치 위치에 설치했다면./configure --with-mysql 2. mysql 을 특정 위치에 설치했다면./configure --with-mysql=[=DIR]
PHP 설치 때마다 까먹는 거 php.ini 위치- PHP 설치 폴더/lib/php.ini- 설치 시 --prefix 로 설치 위치를 명시하지 않았을 경우, /usr/local/lib/php.ini php.ini 로딩 경로 및 로딩된 configuration file 정보 확인- PHP 설치 폴더/bin/php --ini- 또는 phpinfo() or bin/php -i 를 통해서 로딩 정보 확인
시스템 based on Java | 먹고죽자 http://blog.naver.com/worick/80002492782 The configuration file 설정 파일(configuration file)은 (PHP 3.0에서는 php3.ini 이고, PHP 4.0에서는 php.ini 이다.) PHP가 시작될 때 읽혀진다. 서버 모듈 형태의 PHP는 이 작업을 서버가 실행 될 때 한번만 하게 된다. CGI형태의 경우는 CGI 프로그램이 실행 될 때마다 매번 일어난다. PHP를 아파치 모듈로 사용할 때는, PHP의 설정을 Apache configuration 파일과 .htaccess 파일에서 지정하여 설정할 수도 있다. PHP 3.0에서는, PHP의 지시자(directive)들과 동일한 Apache htt..
리나의 꿈 | 리나드림 http://blog.naver.com/gsjdream/120031722144 PHP 파일다운로드(download) 구현 소스 PHP에서 파일 다운로드 관련 소스로 앞에 있는 업로드 소스와 같이 사용하시면 되겠습니다. 역시 $dir 을 서버환경에 맞게 설정하셔야 합니다. 작동방식은 간단합니다. 게시판을 예를 들어 보면 게시물 식별번호를 넘겨주면 된답니다. 만약 이 다운로드 페이지명이 down.php 라면... 다운받기 이렇게 링크를 거시고 소스 중간부분에 주석처리 되어 있는 부분에 파일 정보를 로드 할 수 있는 소스를 자신의 환경에 맞게 추가 하시면 됩니다. 그럼 중간에 주석부분 설명을 잘 확인 하시기 바라면서 이만....^^/ $dir = "upload/"; // 파일이 저장되어..
리나의 꿈 | 리나드림 http://blog.naver.com/gsjdream/120030613339 AddCSlashes -- C 형식으로 문자열에 슬래쉬를 덧붙입니다. addslashes -- 문자열에 슬래쉬를 덧붙입니다. bin2hex -- 바이너리 데이터를 16진수 표현으로 바꿉니다. chop -- rtrim()의 별칭. chr -- 특정 문자를 반환합니다. chunk_split -- 문자열을 작은 조각으로 나눕니다. convert_cyr_string -- 키릴 문자셋을 다른 것으로 변환합니다. convert_uudecode -- Decode a uuencoded string convert_uuencode -- Uuencode a string count_chars -- 문자열 안에 사용한 문자에 ..
비즈 이야기 | 공작부인 http://blog.naver.com/maronin0/10000173543 수학함수 ceil(float num) -> float num보다 작지않은 최소 정수를 출력해 줍니다. 유사한 반대 함수는 floor(x)입니다. Max(x , y , …) -> 주어진 값을 비교해서 최대값을 리턴해 줍니다. 만약 주어진 값 중 하나 또는 그 이상이 double이면 double로 계산하며 이 값으로 리턴합니다. 만약 double 값이 없다면 정수로 계산되며 이 값으로 리턴합니다. Min(x , y , …) -> 주어진 값을 비교하여 최소 값을 리턴해 줍니다. 만약 주어진 값 중 하나 또는 그 이상이 double이면 이 값으로 계산하며 이 값으로 리턴합니다. 만약 double값이 없다면 정수..