1. phpDocumentor란 무엇인가요?<br>PHPDocumentor는 PHP로 작성된 도구로, 표준 주석이 포함된 PHP 프로그램의 경우 상호 참조, 인덱싱 및 기타 기능을 사용하여 API 문서를 빠르게 생성할 수 있습니다. 이전 버전은 phpdoc입니다. 1.3.0부터 이름이 phpDocumentor로 변경되었습니다. 새 버전에서는 php5 구문에 대한 지원이 추가되었습니다. 동시에 클라이언트 브라우저에서 작업하여 문서를 생성할 수 있습니다. PDF, HTML, CHM에는 여러 가지 형태가 있어 매우 편리합니다. <br>PHPDocumentor가 작동하면 지정된 디렉터리 아래의 PHP 소스 코드를 스캔하고, 키워드를 스캔하고, 분석해야 할 주석을 가로채고, 주석의 특수 태그를 분석하고, xml 파일을 생성한 다음, 분석된 클래스와 모듈 정보에 해당하는 index를 설정하고, 생성된 xml 파일에 대해 맞춤형 템플릿을 사용하여 지정된 형식으로 파일을 출력합니다. <br>2. phpDocumentor 설치<br> pear 아래의 다른 모듈과 마찬가지로 phpDocumentor 설치도 자동 설치와 수동 설치 두 가지 방법으로 나누어집니다. <br>a. pear를 통해 자동 설치<br><br>pear install PhpDocumentor<br>입력b. 수동 설치<br>http://manual.phpdoc.org/에서 최신 버전의 PhpDocumentor(현재 1.4.0)를 다운로드하고 콘텐츠의 압축을 푸세요. <br>3. PhpDocumentor를 사용하여 문서를 생성하는 방법 <br>명령줄 방법: <br>phpDocumentor가 있는 디렉터리에서 <br>Php –h<br>를 입력하여 자세한 매개변수 목록을 가져오며, 그 중 몇 가지 중요한 매개변수는 다음과 같습니다. : <br> -f 분석할 파일 이름, 여러 파일을 쉼표로 구분 <br> -d 분석할 디렉터리, 여러 디렉터리를 쉼표로 구분 <br>-t 생성된 문서의 저장 경로 <br>-o 출력 문서 형식의 경우 구조는 출력 형식: 변환기 이름: 템플릿 디렉터리입니다. <br>예: phpdoc -o HTML:frames:earthli -f test.php -t docs<br>웹 인터페이스 생성<br>새 phpdoc에서는 명령줄에서 문서를 생성하는 것 외에도 다음을 생성할 수도 있습니다. 클라이언트의 문서 브라우저에서 작업하여 문서를 생성하려면 먼저 PhpDocumentor의 내용을 Apache 디렉토리에 배치하여 브라우저를 통해 액세스할 수 있도록 하는 것입니다. <br>파일 버튼을 클릭하고 처리할 PHP 파일 폴더를 선택합니다. 이 인터페이스에서 무시할 파일을 지정하여 특정 파일의 처리를 무시할 수도 있습니다. <br>그런 다음 출력 버튼을 클릭하여 생성된 문서의 저장 경로와 형식을 선택합니다. <br>마지막으로 생성을 클릭하면 phpdocumentor가 자동으로 문서 생성을 시작하며 생성 진행 상황과 상태가 하단에 표시됩니다. 성공하면 <br>총 문서화 시간: 1초<br>done<br>작업 완료!!<br>그러면 생성된 문서를 볼 수 있습니다. PDF 형식인 경우 이름은 document.pdf로 기본 지정됩니다. <br>4. PHP 코드에 표준화된 주석 추가 <br>PHPDocument는 소스 코드의 주석에서 문서를 생성하므로 프로그램에 주석을 추가하는 과정은 문서를 컴파일하는 과정이기도 합니다. <br>이러한 관점에서 PHPdoc은 좋은 프로그래밍 습관을 기르고 사양과 명확한 텍스트를 사용하여 프로그램에 주석을 달도록 권장하는 동시에 나중에 문서 및 문서 업데이트의 비동기 개발을 어느 정도 방지합니다. 몇 가지 질문. <br> phpdocumentor에서는 댓글은 문서용 주석과 비문서용 주석으로 구분됩니다. <br>일명 문서 주석은 특정 키워드 앞에 여러 줄로 된 주석입니다. 특정 키워드는 class, var 등 phpdoc에서 분석할 수 있는 키워드를 말합니다. 자세한 내용은 부록 1을 참조하세요. <br> 키워드 앞에 오지 않거나 표준화되지 않은 댓글을 비문서 댓글이라고 합니다. 이러한 댓글은 phpdoc에서 분석되지 않으며 생성한 API 문서에 표시되지 않습니다. <br>3.2 문서 주석 작성 방법: <br> 모든 문서 주석은 /**로 시작하는 여러 줄의 주석으로, phpDocumentor에서는 DocBlock이라고 합니다. 이는 소프트웨어 개발자가 작성한 핵심 주석을 의미합니다. 키워드의 사용을 통해 다른 사람들이 이 키워드의 구체적인 목적과 사용 방법을 알 수 있습니다. PhpDocumentor에서는 DocBlock에 다음 정보가 포함된다고 규정합니다. <br>1. 기능 간략 설명 영역 <br> 2. 상세 설명 영역 <br>3. 태그 표시 <br> 문서 주석의 첫 번째 줄은 기능 설명 영역입니다. 텍스트는 일반적으로 이 클래스, 메소드 또는 함수의 기능을 간략하게 설명합니다. 간략한 기능 설명 텍스트는 생성된 문서의 색인 영역에 표시됩니다. 함수 설명 영역의 내용은 빈 줄로 끝날 수 있습니다. <br>함수 설명 영역이 빈 줄 다음으로 자세한 설명 영역이 옵니다. 이 부분은 주로 API의 기능과 목적을 설명하는 부분입니다. 자세한 내용은 가능하다면 사용법 등의 예를 제시할 수도 있습니다. 이 섹션에서는 API 함수 또는 메서드의 일반적인 목적과 사용법을 명확히 하는 데 중점을 두고, 플랫폼 관련 정보는 일반 정보와 다르게 처리해야 합니다. 일반적인 접근 방식은 새 줄을 시작한 다음 메모 또는 특정 플랫폼에 대한 특별 정보를 작성하는 것입니다. 이 정보는 독자가 경계 조건, 매개변수와 같은 해당 테스트 정보를 작성할 수 있을 만큼 충분해야 합니다. 범위, 중단점 등<br> 뒤에는 빈 줄이 있고 문서 태그가 있는데, 이는 주로 호출 매개변수 유형, 반환 값 및 유형, 상속 관계, 관련 메서드/함수 등 일부 기술 정보를 나타냅니다. <br> 문서 태그에 대한 자세한 내용은 섹션 4: 문서 태그를 참조하세요. <br>문서 주석에 등의 태그를 사용할 수도 있습니다. 자세한 내용은 부록 2를 참조하세요. <br>다음은 문서 주석 예시<br>/**<br>* add 함수, 두 숫자의 덧셈 구현 <br>*<br>* 간단한 덧셈 계산, 이 함수는 두 숫자 a와 b를 받아들이고 그 합을 반환합니다. c<br>* <br>* @ param int addend<br>* @param int addend<br>* @return 정수 <br>*/<br>function Add($a, $b)<br>{<br> return $a $b;<br>} <br>생성된 문서는 다음과 같습니다. <br>Add<br>integer Add( int $a, int $b) <br>[line 45]<br>두 숫자의 더하기를 구현하는 함수 add<br>간단한 상수 덧셈 계산을 위해 함수는 두 숫자 a와 b를 받아들이고 그 합을 반환합니다. c<br>매개변수<br>? int $a - addend<br>? int $b - summand<br>5. 문서 태그: <br> 문서 태그의 사용 범위는 해당 태그를 사용하여 수정할 수 있는 키워드나 기타 문서 태그를 의미합니다. <br>모든 문서 태그는 각 줄의 * 뒤에 @로 시작됩니다. @ 표시가 단락 중간에 나타나면 해당 표시는 일반 내용으로 간주되어 무시됩니다. <br>@access<br>사용 범위: 클래스, 함수, var, 정의, 모듈<br>이 태그는 키워드의 액세스 권한을 나타내는 데 사용됩니다: 비공개, 공개 또는 보호<br>@author<br> 작성자 <br>@copyright<br>사용 범위: 클래스, 함수, var, 정의, 모듈, 사용<br>저작권 정보 표시<br>@deprecated<br>사용 범위: 클래스, 함수, var, 정의, 모듈, constent , global, include<br>사용되지 않거나 더 이상 사용되지 않는 키워드를 나타냅니다. <br>@example<br>이 태그는 파일 콘텐츠를 구문 분석하고 강조 표시하는 데 사용됩니다. Phpdoc은 태그에 지정된 파일 경로에서 파일의 내용을 읽으려고 시도합니다. 🎜>사용 범위: class, function, var<br>키워드가 최종 클래스, 메서드, 속성, 파생 및 수정을 금지합니다. <br>@filesource<br>는 이 태그가 현재 구문 분석된 PHP 파일의 내용을 직접 읽고 표시한다는 점을 제외하면 예제와 유사합니다. <br>@global<br>이 함수에서 참조되는 <br>전역 변수<br><br>@ingore<br>가 문서에서 지정된 키워드를 무시하는 데 사용됨을 나타냅니다.<br>@license html 태그의 는 먼저 URL이고 그 다음 표시할 콘텐츠입니다. 예: <br>Baidu<br>< ;/a><br>는 @license로 작성할 수 있습니다. http://www.baidu.com <br>Baidu<br>@link는 라이센스<br>와 유사하지만 다음과 같이 작성할 수도 있습니다. 링크를 통해 문서를 가리킴 모든 키워드 @name은 키워드의 별칭을 지정합니다. <br>@package<br>사용 범위: 페이지 레벨 -> 정의, 함수, <br>include<br><br> 클래스 레벨 ->class, var, 메소드<br>를 논리적으로 적용하는 데 사용됩니다. 여러 키워드가 함께 그룹화됩니다. <br>@abstrcut현재 클래스가 추상 클래스임을 나타냅니다@param<br>함수의 매개변수를 나타냅니다<br>@return<br>메서드나 함수의 반환 포인터를 나타냅니다<br>@static<br>관장자가 정적임을 나타냅니다. <br>@var<br>변수 유형 지정<br>@version<br>버전 정보 지정<br>@todo<br>개선해야 할 부분이나 구현하지 말아야 할 부분 지정<br>@throws<br> 이 함수가 오류 예외를 발생시킬 수 있음을 나타냅니다. 극히 드뭅니다 <br>위에서 언급한 것처럼 일반 문서 태그는 각 줄의 시작 부분에 @를 표시해야 합니다. 또한 {@} 표현식을 사용하여 인라인 태그라는 태그도 있습니다. 다음 유형을 포함합니다: <br>{@link}<br>사용법은 @link와 동일<br>{@source}<br>함수 또는 메서드의 내용을 표시<br>6. 일부 주석 사양 <br>a. 주석은 <br>/**<br>* XXXXXXX<br>*/<br><br> 형식이어야 합니다. b. <br>전역 변수<br>를 참조하는 함수의 경우 glboal 태그는 다음과 같습니다. 사용됩니다. <br>c. 변수의 경우 해당 유형(int, string, bool...)을 var <br>d로 표시해야 합니다. 함수는 param 및 반환 마커를 통해 해당 매개변수와 반환 값을 표시해야 합니다<br>e. 2번 발생하는 경우 2번 이상 사용된 키워드는 잉고어를 통해 중복되는 것은 무시하고 하나만 유지해야 합니다f. 다른 함수나 클래스가 호출되는 경우에는 링크나 기타 태그를 사용하여 해당 항목으로 연결해야 합니다. 문서를 쉽게 읽을 수 있도록 하는 부분입니다. g. 코드 가독성을 높이기 위해 필요한 경우 문서화되지 않은 주석을 사용하세요. <br>h. 가능하면 문장보다는 문구를 사용하여 설명 내용을 간결하고 명확하게 유지하세요. <br>i.<br>전역 변수<br>, <br>정적 변수<br> 및 상수는 해당 태그로 기술해야 합니다<br>7. 요약phpDocumentor는 다음을 사용하는 매우 강력한 문서 자동 생성 도구입니다. 이는 표준화된 주석을 작성하고 이해하기 쉽고 명확하게 구조화된 문서를 생성하는 데 도움이 되며, 이는 코드 업그레이드, 유지 관리, 인계 등에 매우 도움이 됩니다.<br>phpDocumentor에 대한 자세한 설명은 공식 홈페이지 <br>http://manual.phpdoc.org/<br>에서 확인하실 수 있습니다.8. 부록<br>부록 1:<br>phpdoc에서 인식할 수 있는 키워드: <br>include<br>require<br>include_once<br>require_once<br>define<br>function<br>global<br>class<br>부록 2<br>문서에서 사용할 수 있는 태그<br> 🎜> <br><br> <br><kdb><br><li>
<br><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><br></pre><div class="contentsignin">로그인 후 복사</div></div>
<ul>
<br><samp><br>< ;var><br>부록 3: <br>사양 주석이 포함된 PHP 코드<br><?php<br>/**<br>* 샘플 파일 2, phpDocumentor Quickstart<br>* <br>* 이 파일은 DocBlocks 및 태그를 통해 코드 내 문서에 <br>포함<strong>*할 수 있는</strong>* 풍부한 정보를 보여줍니다.<br>* @author Greg Beaver <celllog@php.net><br>* @version 1.0<br>* @package 샘플<br>*/<br>// 샘플 파일 #1<br>/ **<br>* phpDocumentor의 구문 분석 능력을 보여주기 위한 더미 <br>include<strong> 값</strong>*/<br><br>포함<strong>_once 'sample3.php';</strong>/**<br>* 특수 전역 변수 선언 DocBlock<br>* @global 정수 $GLOBALS['_myvar'] <br>* @name $_myvar<br>*/ <br>$GLOBALS['_myvar'] = 6 ;<br>/**<br>* 상수<br>*/<br>/**<br>* 첫 번째 상수<br>*/<br>정의('테스트', 6);<br>/**<br>* 두 번째 상수<br>*/<br>정의 ('anotherconstant', strlen('hello'));<br>/**<br>* 샘플 함수 docblock<br>* @global string 이 함수가 $_myvar을 사용한다는 사실을 문서화<br>* @staticvar 정수 $staticvar 이것이 실제로 반환되는 내용입니다.<br>* @param string $param1 이름 선언<br>* @param string $param2 이름 값<br>* @return 정수 <br>*/<br>function firstFunc($param1, $param2 = '선택적')<br>{<br> static $staticvar = 7; <br> 전역 $_myvar;<br> return $staticvar;<br>}<br>/**<br>* 첫 번째 예제 클래스는 파일 시작 부분에 있는<br>* 절차 항목과 동일한 패키지에 있습니다.<br>* @package 샘플<br>* @subpackage 클래스<br>*/<br>class myclass {<br> /**<br> * 샘플 개인 변수는 --parseprivate<br> * 옵션<br> * @access private<br> * @var 정수|string<br>으로 숨길 수 있습니다.*/<br> var $firstvar = 6;<br> /**<br> * @link http://www.example.com 예제 링크<br> * @see myclass()<br> * @uses 테스트, anotherconstant<br> * @var 배열 <br>*/<br> var $secondvar =<br> array(<br> 'stuff' =><br> array(<br> 6, <br> 17,<br> 'armadillo'<br> ),<br> 테스트 => 다른 상수<br> );<br> /**<br> * 생성자는 {@link $firstvar}<br>를 설정합니다.*/<br> 함수 myclass()<br> {<br> $this->firstvar = 7;<br> }<br> /**<br> * $paramie를 기반으로 한 항목 반환<br> * @param boolean $paramie <br> * @return 정수|babyclass<br>*/<br> function parentfunc($paramie)<br> {<br> if ($paramie) { <br> return 6;<br> } else {<br> return new babyclass;<br> }<br> }<br>}<br>/**<br>* @패키지 샘플1<br>*/<br>class babyclass는 myclass를 확장합니다. <br> /**<br> * 인생, 우주, 그리고 모든 것에 대한 답<br> * @var 정수 <br>*/<br> var $secondvar = 42;<br> /**<br> * 구성 값<br> * @var 배열 <br>*/<br> var $thirdvar;<br> /**<br> * 상위 생성자를 호출한 다음 {@link $firstvar}<br>를 증가시킵니다.*/<br> function babyclass()<br> {<br> parent::myclass();<br> $this->firstvar ;<br> }<br> /**<br> * 항상 myclass를 반환합니다<br> * @param은 $paramie를 무시합니다 <br> * @return myclass <br>*/<br> function parentfunc ($paramie )<br> {<br> return new myclass;<br> }<br>}<br>?><br></samp>
</ul>
</li></kdb>