本文整理匯總了PHP中Propel\Generator\Model\Column::getDefaultValue方法的典型用法代碼示例。如果您正苦於以下問題:PHP Column::getDefaultValue方法的具體用法?PHP Column::getDefaultValue怎麽用?PHP Column::getDefaultValue使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Propel\Generator\Model\Column
的用法示例。
在下文中一共展示了Column::getDefaultValue方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: compareColumns
public static function compareColumns(Column $fromColumn, Column $toColumn)
{
$changedProperties = [];
// compare column types
$fromDomain = $fromColumn->getDomain();
$toDomain = $toColumn->getDomain();
if ($fromDomain->getScale() !== $toDomain->getScale()) {
$changedProperties['scale'] = [$fromDomain->getScale(), $toDomain->getScale()];
}
if ($fromDomain->getSize() !== $toDomain->getSize()) {
$changedProperties['size'] = [$fromDomain->getSize(), $toDomain->getSize()];
}
if (strtoupper($fromDomain->getSqlType()) !== strtoupper($toDomain->getSqlType())) {
if ($fromDomain->getOriginSqlType()) {
if (strtoupper($fromDomain->getOriginSqlType()) !== strtoupper($toDomain->getSqlType())) {
if ($fromDomain->getType() !== $toDomain->getType()) {
$changedProperties['type'] = [$fromDomain->getType(), $toDomain->getType()];
}
$changedProperties['sqlType'] = [$fromDomain->getSqlType(), $toDomain->getSqlType()];
}
} else {
$changedProperties['sqlType'] = [$fromDomain->getSqlType(), $toDomain->getSqlType()];
if ($fromDomain->getType() !== $toDomain->getType()) {
$changedProperties['type'] = [$fromDomain->getType(), $toDomain->getType()];
}
}
}
if ($fromColumn->isNotNull() !== $toColumn->isNotNull()) {
$changedProperties['notNull'] = [$fromColumn->isNotNull(), $toColumn->isNotNull()];
}
// compare column default value
$fromDefaultValue = $fromColumn->getDefaultValue();
$toDefaultValue = $toColumn->getDefaultValue();
if ($fromDefaultValue && !$toDefaultValue) {
$changedProperties['defaultValueType'] = [$fromDefaultValue->getType(), null];
$changedProperties['defaultValueValue'] = [$fromDefaultValue->getValue(), null];
} elseif (!$fromDefaultValue && $toDefaultValue) {
$changedProperties['defaultValueType'] = [null, $toDefaultValue->getType()];
$changedProperties['defaultValueValue'] = [null, $toDefaultValue->getValue()];
} elseif ($fromDefaultValue && $toDefaultValue) {
if (!$fromDefaultValue->equals($toDefaultValue)) {
if ($fromDefaultValue->getType() !== $toDefaultValue->getType()) {
$changedProperties['defaultValueType'] = [$fromDefaultValue->getType(), $toDefaultValue->getType()];
}
if ($fromDefaultValue->getValue() !== $toDefaultValue->getValue()) {
$changedProperties['defaultValueValue'] = [$fromDefaultValue->getValue(), $toDefaultValue->getValue()];
}
}
}
if ($fromColumn->isAutoIncrement() !== $toColumn->isAutoIncrement()) {
$changedProperties['autoIncrement'] = [$fromColumn->isAutoIncrement(), $toColumn->isAutoIncrement()];
}
return $changedProperties;
}
示例2: getColumnDDL
public function getColumnDDL(Column $col)
{
if ($col->isAutoIncrement()) {
$col->setType('INTEGER');
$col->setDomainForType('INTEGER');
}
if ($col->getDefaultValue() && $col->getDefaultValue()->isExpression() && 'CURRENT_TIMESTAMP' === $col->getDefaultValue()->getValue()) {
//sqlite use CURRENT_TIMESTAMP different than mysql/pgsql etc
//we set it to the more common behavior
$col->setDefaultValue(new ColumnDefaultValue("(datetime(CURRENT_TIMESTAMP, 'localtime'))", ColumnDefaultValue::TYPE_EXPR));
}
return parent::getColumnDDL($col);
}
示例3: getAccessorLazyLoadSnippet
/**
* Gets accessor lazy loaded snippets.
*
* @param Column $column
* @return string
*/
protected function getAccessorLazyLoadSnippet(Column $column)
{
if ($column->isLazyLoad()) {
$clo = $column->getLowercasedName();
$defaultValueString = 'null';
$def = $column->getDefaultValue();
if ($def !== null && !$def->isExpression()) {
$defaultValueString = $this->getDefaultValueString($column);
}
return "\n if (!\$this->{$clo}_isLoaded && \$this->{$clo} === {$defaultValueString} && !\$this->isNew()) {\n \$this->load{$column->getPhpName()}(\$con);\n }\n";
}
return '';
}
示例4: getColumnDefaultValueDDL
/**
* Returns the SQL for the default value of a Column object
* @return string
*/
public function getColumnDefaultValueDDL(Column $col)
{
$default = '';
$defaultValue = $col->getDefaultValue();
if (null !== $defaultValue) {
$default .= 'DEFAULT ';
if ($defaultValue->isExpression()) {
$default .= $defaultValue->getValue();
} else {
if ($col->isTextType()) {
$default .= $this->quote($defaultValue->getValue());
} elseif (in_array($col->getType(), array(PropelTypes::BOOLEAN, PropelTypes::BOOLEAN_EMU))) {
$default .= $this->getBooleanString($defaultValue->getValue());
} elseif ($col->getType() == PropelTypes::ENUM) {
$default .= array_search($defaultValue->getValue(), $col->getValueSet());
} elseif ($col->isPhpArrayType()) {
$value = $this->getPhpArrayString($defaultValue->getValue());
if (null === $value) {
$default = '';
} else {
$default .= $value;
}
} else {
$default .= $defaultValue->getValue();
}
}
}
return $default;
}
示例5: getColumnDefaultValueDDL
/**
* Returns the SQL for the default value of a Column object
* @return string
*/
public function getColumnDefaultValueDDL(Column $col)
{
$default = '';
$defaultValue = $col->getDefaultValue();
if (null !== $defaultValue) {
$default .= 'DEFAULT ';
if ($defaultValue->isExpression()) {
$default .= $defaultValue->getValue();
} else {
if ($col->isTextType()) {
$default .= $this->quote($defaultValue->getValue());
} elseif (in_array($col->getType(), [PropelTypes::BOOLEAN, PropelTypes::BOOLEAN_EMU])) {
$default .= $this->getBooleanString($defaultValue->getValue());
} elseif ($col->getType() == PropelTypes::ENUM) {
$default .= array_search($defaultValue->getValue(), $col->getValueSet());
} elseif ($col->isSetType()) {
$val = trim($defaultValue->getValue());
$values = [];
foreach (explode(',', $val) as $v) {
$values[] = trim($v);
}
$default .= SetColumnConverter::convertToInt($values, $col->getValueSet());
} elseif ($col->isPhpArrayType()) {
$value = $this->getPhpArrayString($defaultValue->getValue());
if (null === $value) {
$default = '';
} else {
$default .= $value;
}
} else {
$default .= $defaultValue->getValue();
}
}
}
return $default;
}