本文整理汇总了PHP中Column::getPhpType方法的典型用法代码示例。如果您正苦于以下问题:PHP Column::getPhpType方法的具体用法?PHP Column::getPhpType怎么用?PHP Column::getPhpType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Column
的用法示例。
在下文中一共展示了Column::getPhpType方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: compareColumns
public static function compareColumns(Column $fromColumn, Column $toColumn)
{
$changedProperties = array();
// compare column types
$fromDomain = $fromColumn->getDomain();
$toDomain = $toColumn->getDomain();
if ($fromDomain->getType() != $toDomain->getType()) {
if ($toColumn->getType() == PropelTypes::ENUM && $toColumn->getPhpType() == 'string') {
// use MySQL native ENUM support
} else {
$changedProperties['type'] = array($fromDomain->getType(), $toDomain->getType());
}
}
if ($fromDomain->getScale() != $toDomain->getScale()) {
$changedProperties['scale'] = array($fromDomain->getScale(), $toDomain->getScale());
}
if ($fromDomain->getSize() != $toDomain->getSize()) {
$changedProperties['size'] = array($fromDomain->getSize(), $toDomain->getSize());
}
if (strtoupper($fromDomain->getSqlType()) != strtoupper($toDomain->getSqlType())) {
$changedProperties['sqlType'] = array($fromDomain->getSqlType(), $toDomain->getSqlType());
}
if ($fromColumn->isNotNull() != $toColumn->isNotNull()) {
$changedProperties['notNull'] = array($fromColumn->isNotNull(), $toColumn->isNotNull());
}
// compare column default value
$fromDefaultValue = $fromColumn->getDefaultValue();
$toDefaultValue = $toColumn->getDefaultValue();
if ($fromDefaultValue && !$toDefaultValue) {
$changedProperties['defaultValueType'] = array($fromDefaultValue->getType(), null);
$changedProperties['defaultValueValue'] = array($fromDefaultValue->getValue(), null);
} elseif (!$fromDefaultValue && $toDefaultValue) {
$changedProperties['defaultValueType'] = array(null, $toDefaultValue->getType());
$changedProperties['defaultValueValue'] = array(null, $toDefaultValue->getValue());
} elseif ($fromDefaultValue && $toDefaultValue) {
if (!$fromDefaultValue->equals($toDefaultValue)) {
if ($fromDefaultValue->getType() != $toDefaultValue->getType()) {
$changedProperties['defaultValueType'] = array($fromDefaultValue->getType(), $toDefaultValue->getType());
}
if ($fromDefaultValue->getValue() != $toDefaultValue->getValue()) {
$changedProperties['defaultValueValue'] = array($fromDefaultValue->getValue(), $toDefaultValue->getValue());
}
}
}
if ($fromColumn->isAutoIncrement() != $toColumn->isAutoIncrement()) {
$changedProperties['autoIncrement'] = array($fromColumn->isAutoIncrement(), $toColumn->isAutoIncrement());
}
return $changedProperties;
}
示例2: addMutatorComment
/**
* Adds the comment for a mutator
* @param string &$script The script will be modified in this method.
* @param Column $col The current column.
* @see addMutatorOpen()
**/
public function addMutatorComment(&$script, Column $col)
{
$clo = strtolower($col->getName());
$script .= "\n\t/**\n\t * Set the value of [{$clo}] column.\n\t * " . $col->getDescription() . "\n\t * @param " . $col->getPhpType() . " \$v new value\n\t * @return " . $this->getObjectClassname() . " The current object (for fluent API support)\n\t */";
}
示例3: addEnumMutator
/**
* Adds a setter for Enum columns.
* @param string &$script The script will be modified in this method.
* @param Column $col The current column.
* @see parent::addColumnMutators()
*/
protected function addEnumMutator(&$script, Column $col)
{
$clo = strtolower($col->getName());
$script .= "\n /**\n * Set the value of [{$clo}] column.\n * " . $col->getDescription() . "\n * @param " . $col->getPhpType() . " \$v new value\n * @return " . $this->getObjectClassname() . " The current object (for fluent API support)\n * @throws PropelException - if the value is not accepted by this enum.\n */";
$this->addMutatorOpenOpen($script, $col);
$this->addMutatorOpenBody($script, $col);
$script .= "\n if (\$v !== null) {\n \$valueSet = " . $this->getPeerClassname() . "::getValueSet(" . $this->getColumnConstant($col) . ");\n if (!in_array(\$v, \$valueSet)) {\n throw new PropelException(sprintf('Value \"%s\" is not accepted in this enumerated column', \$v));\n }\n \$v = array_search(\$v, \$valueSet);\n }\n\n if (\$this->{$clo} !== \$v) {\n \$this->{$clo} = \$v;\n \$this->modifiedColumns[] = " . $this->getColumnConstant($col) . ";\n }\n";
$this->addMutatorClose($script, $col);
}
示例4: addMutatorComment
/**
* Adds the comment for a mutator
* @param string &$script The script will be modified in this method.
* @param Column $col The current column.
* @see addMutatorOpen()
**/
protected function addMutatorComment(&$script, Column $col) {
$clo = strtolower($col->getName());
$script .= "
/**
* Set the value of [$clo] column.
* ".$col->getDescription()."
* @param ".$col->getPhpType()." \$v new value
* @return ".$this->getObjectClassname()." The current object (for fluent API support)
*/";
}
示例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 ($defaultValue !== null) {
$default .= 'DEFAULT ';
if ($defaultValue->isExpression()) {
$default .= $defaultValue->getValue();
} else {
if ($col->isTextType()) {
$default .= $this->quote($defaultValue->getValue());
} elseif ($col->getType() == PropelTypes::BOOLEAN || $col->getType() == PropelTypes::BOOLEAN_EMU) {
$default .= $this->getBooleanString($defaultValue->getValue());
} elseif ($col->getType() == PropelTypes::ENUM) {
$v = array_search($defaultValue->getValue(), $col->getValueSet());
if ($col->getPhpType() == 'string') {
$v = "'{$v}'";
}
$default .= $v;
} elseif ($col->isPhpArrayType()) {
$value = $this->getPhpArrayString($defaultValue->getValue());
if (null === $value) {
$default = '';
} else {
$default .= $value;
}
} else {
$default .= $defaultValue->getValue();
}
}
}
return $default;
}