PHP yorum blokları nasıl okunur?

2 Cevap php

Ben kendi düzeni içinde çok standart olmayan bir kod temeli var ve ben en iyi yolu, bir PHP dosyası okumak ve bir açıklama bloğunun içeriğini kapmak için ne olduğunu merak ediyorum çünkü ben, bazı ev demlenmiş otomatik belgelerine yapıyorum. Bunu yapmak için aklınıza tek yolu dosyayı açın ve hat-by-line okumak için, ama belki orada olduğunu düşündüm bazı yerleşik büyü, benim için Yansıma işlevlerine benzer belgeyi ayrıştırmak söyledi.

Her dosyanın temel düzeni şöyle:

<?php // $Id$
/**
 * Here is this script's documentation, with information in pseudo-javadoc
 * type tags and whatnot.
 *
 * @attr    something    some information about something
 * @attr    etc          etc etc
 */
 // rest of the code goes here.

Bu dosyalar herhangi bir işlevleri veya onları tanımlanan sınıfları yok dikkat etmek önemlidir. Yorumlar bir bütün olarak komut ile ilgilidir.

2 Cevap

Çıkış Tokenizer.

test.php yapacağın adlı bir dosyada tüm yorumlarını almak için:

$tokens = token_get_all(file_get_contents("test.php"));
$comments = array();
foreach($tokens as $token) {
    if($token[0] == T_COMMENT || $token[0] == T_DOC_COMMENT) {
        $comments[] = $token[1];
    }
}
print_r($comments);

Reflection API o PHP5 ile gelen bir göz, daha spesifik getDocComment():

PHP 5 comes with a complete reflection API that adds the ability to reverse-engineer classes, interfaces, functions and methods as well as extensions. Additionally, the reflection API also offers ways of retrieving doc comments for functions, classes and methods.

Ayrıca, kod temeli boyutuna bağlı olarak, zaten phpDocumentor sözdizimi, sığdırmak için yorumlarınızı değiştirerek daha az işe yarayabilecek oldukça yakın görünüyor.