Verimli PHP işlevleri açıklayan

2 Cevap php

How can you describe the parameters and return type (getter/setter) of your PHP functions?

I need to tell my moderator the return type and list the parameters for each function. I have hundreds of functions so this is becoming problem, since I need to do this for every single revision.

Ben şu anda kullandıkları aşağıdaki prosedür

  1. ack-grep "function " > /tmp/functions 2 . in Vim:
    • %s/\d//g, %s/{//, %s/://g
    • `% S /. *. Php / \ U & /
    • sonra her dosyanın fonksiyonlarının listesinin başına Büyük'ü dosya koyarak
    • başka bir dosyaya bir dosya ve parametreleri işlevleri koymak linenumbers maç böyle
    • Eğer gelen hattını ya setter veya getter yazmak üçüncü bir dosya oluşturmak
  2. paste -d"&" /tmp/{functions,functions_param,functions_type}
  3. Her dosyanın fonksiyonlarının her set için LaTeX biçimlendirme ekleyebilirsiniz

2 Cevap

Gibi bir şey kullanın phpdoc.

Temelde kodunuzu özel yorum ekleyebilirsiniz:

/**
 * A sample function docblock
 * @global string document the fact that this function uses $_myvar
 * @staticvar integer $staticvar this is actually what is returned
 * @param string $param1 name to declare
 * @param string $param2 value of the name
 * @return integer 
 */
function firstFunc($param1, $param2 = 'optional') {
    static $staticvar = 7;
    global $_myvar;

    return $staticvar;
}

ve bunun için otomatik HTML belgeleri üretir.

Temelde bu arkasındaki fikir, bir programcının hayatını kolaylaştırmak ve ona çok fazla zaman harcamak zorunda kalmadan hat API belgelerine yazılı izin vermektir.

Orada da bu anlamak bazı IDE vardır ve bunu kullanırken belgelerini gösterecektir. Örneğin, bu fonksiyon:

/** Retrieve the action key
 * @return string
 */
function isValid($value) {
  ....
}

Bu gösteriyor Zend stüdyoda: http://static.zend.com/topics/code-assist.png

Eğer böyle bir IDE kullanarak konum, özellikle eğer (bunu Zend yanında başkaları da vardır), büyük olasılıkla zaten kodlama yaparken size yardımcı olur, çünkü kendinizi doğal, her fonksiyonu ve parametre belgeleyen bulacaksınız.

phpdoc. Iki sayıyı ekler ve bir örnek olarak sonucu verir toplamı fonksiyonu alarak:

/**
 * Adds up two int numbers
 * @param int $x the first number to add
 * @param int $y the second number to add
 * @return int the result of the operation
 */
 function my_sum ($x, $y)
 {
     return $x+$y;
 }