记录此PHP代码的最佳方式是什么?

记录此PHP代码的最佳方式是什么?,php,documentation,Php,Documentation,您能告诉我该函数的功能是什么吗?您将如何使用注释记录以下函数: function tosql($value, $value_type, $is_delimiters = true, $use_null = true) { if (is_array($value) || strlen($value)) { switch ($value_type) { case NUMBER: case

您能告诉我该函数的功能是什么吗?您将如何使用注释记录以下函数:

function tosql($value, $value_type, $is_delimiters = true, $use_null = true) 
    {
        if (is_array($value) || strlen($value)) {
            switch ($value_type) {
                case NUMBER:
                case FLOAT:
                    return preg_replace(array("/,/", "/[^0-9\.,\-]/"), array(".", ""), $value);
                    break;
                case DATETIME:
                    if (!is_array($value) && is_int($value)) { $value = va_time($value); }
                    if (is_array($value)) { $value = va_date($this->DatetimeMask, $value); } 
                    else { return "NULL"; }
                    break;
                case INTEGER:
                    return intval($value);
                    break;
                case DATE:
                    if (!is_array($value) && is_int($value)) { $value = va_time($value); }
                    if (is_array($value)) { $value = va_date($this->DateMask, $value); }
                    else { return "NULL"; }
                    break;
                case TIME:
                    if (!is_array($value) && is_int($value)) { $value = va_time($value); }
                    if (is_array($value)) { $value = va_date($this->TimeMask, $value); }
                    else { return "NULL"; }
                    break;
                case TIMESTAMP:
                    if (!is_array($value) && is_int($value)) { $value = va_time($value); }
                    if (is_array($value)) { $value = va_date($this->TimestampMask, $value); }
                    else { return "NULL"; }
                    break;
                case NUMBERS_LIST:
                case FLOATS_LIST:
                    $values = (is_array($value)) ? $value : explode(",", $value);
                    for ($v = 0; $v < sizeof($values); $v++) {
                        $value = $values[$v];
                        $value = preg_replace(array("/,/", "/[^0-9\.,\-]/"), array(".", ""), $value);
                        if (!is_numeric($value)) {
                            $value = 0;
                        }
                        $values[$v] = $value;
                    }
                    return implode(",", $values);
                    break;
                case INTEGERS_LIST:
                    $values = (is_array($value)) ? $value : explode(",", $value);
                    for ($v = 0; $v < sizeof($values); $v++) {
                        $values[$v] = intval($values[$v]);
                    }
                    return implode(",", $values);
                    break;
                default:
                    $value = addslashes($value);
                    break;
            }
            if ($is_delimiters) {
                $value = "'" . $value . "'";
            }
        } elseif ($use_null) {
            $value = "NULL";
        } else {
            if ($value_type == INTEGER || $value_type == FLOAT || $value_type == NUMBER 
                || $value_type == NUMBERS_LIST || $value_type == FLOATS_LIST || $value_type == INTEGERS_LIST) {
                $value = 0;
            } elseif ($is_delimiters) {
                $value = "''";
            }
        } 
        return $value;
    }
函数tosql($value、$value\u type、$is\u delimiters=true、$use\u null=true) { if(is_数组($value)| strlen($value)){ 开关($value\u类型){ 案件编号: 案例浮动: 返回preg\u replace(数组(“/,/”,“/[^0-9\,\-]/”),数组(“.”,“),$value); 打破 案例日期时间: 如果(!is_数组($value)&&is_int($value)){$value=va_时间($value);} 如果(is_数组($value)){$value=va_日期($this->DatetimeMask,$value);} else{返回“NULL”;} 打破 大小写整数: 返回intval($value); 打破 案件日期: 如果(!is_数组($value)&&is_int($value)){$value=va_时间($value);} 如果(is_数组($value)){$value=va_日期($this->DateMask,$value);} else{返回“NULL”;} 打破 案件时间: 如果(!is_数组($value)&&is_int($value)){$value=va_时间($value);} 如果(is_数组($value)){$value=va_日期($this->TimeMask,$value);} else{返回“NULL”;} 打破 案例时间戳: 如果(!is_数组($value)&&is_int($value)){$value=va_时间($value);} 如果(is_数组($value)){$value=va_日期($this->TimestampMask,$value);} else{返回“NULL”;} 打破 个案编号(列表): 案例浮动列表: $values=(is_数组($value))?$value:explode(“,”,$value); 对于($v=0;$v好吧,让它快速浏览一下,它似乎是一个函数,可以安全地将给定值转换为可在SQL命令中使用的字符串。如果它不能转换它,那么它会给出一个合适的安全值“NULL”,这样就不会破坏代码

usage: tosql( mydate, 'DATE' )

建议您在注释中剪切并粘贴类似上述代码的内容…

好吧,让它快速浏览一下,它似乎是一个函数,用于将给定值安全地转换为可在SQL命令中使用的字符串。如果它不能转换它,那么它会给出一个合适的安全值“NULL”,这样就不会破坏代码

usage: tosql( mydate, 'DATE' )

建议您在注释中剪切并粘贴类似上述代码的内容…

它接受一个值和一个表示值类型的常量,并将其转换为SQL语句中可接受的内容。它还支持某些类型的数组(
DATETIME
DATE
TIME
TIMESTAMP
列表
类型)。当
$is_delimiters
为true时,它用单引号将项括起来(用于插入的值和需要它们的比较标记)。如果指定了
$use\u null
,它将提供
null
标记


如何对代码进行注释是一个观点、宗教以及您对下一个必须使用您的代码的yahoo有多关心的问题。

它接受一个值和一个表示值类型的常量,并将其转换为SQL语句中可接受的内容。它还支持某些类型的数组(
DATETIME
DATE
TIME
TIMESTAMP
列表
类型)。当
$is_delimiters
为true时,它用单引号将项括起来(用于插入的值和需要它们的比较标记)。如果指定了
$use\u null
,它将提供
null
标记

如何评论代码是一个观点、宗教以及你对下一个使用你的代码的雅虎有多关心的问题。

使用PHPDocumentor

/**
 * tosql
 * Converts a string to a valid sql string
 * @param string
 * @param string
 * @return string
*/
function tosql($value, $value_type, $is_delimiters = true, $use_null = true) 
{
}
使用PHPDocumentor

/**
 * tosql
 * Converts a string to a valid sql string
 * @param string
 * @param string
 * @return string
*/
function tosql($value, $value_type, $is_delimiters = true, $use_null = true) 
{
}

请澄清你的问题。在我看来,您希望有人在每行代码上写注释,以便您能够理解它。我担心,很少有人会尝试。否则,“您将如何使用注释记录以下函数”是什么意思?/*这是您在编写函数时应该对其进行注释的时候,*/将其放在每日WTF上,它们也会告诉您这方面的所有错误: