本文整理汇总了PHP中Zend_CodeGenerator_Php_Parameter::setType方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_CodeGenerator_Php_Parameter::setType方法的具体用法?PHP Zend_CodeGenerator_Php_Parameter::setType怎么用?PHP Zend_CodeGenerator_Php_Parameter::setType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend_CodeGenerator_Php_Parameter
的用法示例。
在下文中一共展示了Zend_CodeGenerator_Php_Parameter::setType方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testGenerateIsCorrect
public function testGenerateIsCorrect()
{
$this->_parameter->setType('Foo');
$this->_parameter->setName('bar');
$this->_parameter->setDefaultValue(15);
$this->assertEquals('Foo $bar = 15', $this->_parameter->generate());
$this->_parameter->setDefaultValue('foo');
$this->assertEquals('Foo $bar = \'foo\'', $this->_parameter->generate());
}
示例2: fromReflection
/**
* fromReflection()
*
* @param Zend_Reflection_Parameter $reflectionParameter
* @return Zend_CodeGenerator_Php_Parameter
*/
public static function fromReflection(Zend_Reflection_Parameter $reflectionParameter)
{
$param = new Zend_CodeGenerator_Php_Parameter();
$param->setName($reflectionParameter->getName());
if ($reflectionParameter->isArray()) {
$param->setType('array');
} else {
$typeClass = $reflectionParameter->getClass();
if ($typeClass !== null) {
$param->setType($typeClass->getName());
}
}
$param->setPosition($reflectionParameter->getPosition());
if ($reflectionParameter->isOptional()) {
$param->setDefaultValue($reflectionParameter->getDefaultValue());
}
$param->setPassedByReference($reflectionParameter->isPassedByReference());
return $param;
}
示例3: createMethodLoad
/**
* @see models_ClassGenerator_Defaults_Interface::createMethodLoad
*/
public function createMethodLoad()
{
$resultMethod = new Zend_CodeGenerator_Php_Method();
$resultMethod->setName('load');
$resultMethod->setStatic(true);
$resultMethod->setVisibility(Zend_CodeGenerator_Php_Property::VISIBILITY_PUBLIC);
//---------------------- Parameters ---------------------
$paramZendDbObj = new Zend_CodeGenerator_Php_Parameter();
$paramZendDbObj->setName('zendDbObj');
$paramZendDbObj->setType('Zend_Db_Adapter_Abstract');
$resultMethod->setParameter($paramZendDbObj);
//Pkeys
$pkeyAttributes = $this->getPersistenceInformation()->getPkeyAttributes();
if (!empty($pkeyAttributes)) {
foreach ($pkeyAttributes as $pkeyAttribute) {
/* @var $pkeyAttribute Zend_CodeGenerator_Php_Property */
$paramPkey = new Zend_CodeGenerator_Php_Parameter();
$paramPkey->setName('par' . ucfirst($pkeyAttribute->getName()));
$paramPkey->setType(Model_ClassGenerator_PersistenceInformation::getType($pkeyAttribute));
$resultMethod->setParameter($paramPkey);
}
}
//--------------------------------------------------------
//Pkeys
$body = 'if(!isset(' . $this->_provideInstancesKeySelectorString() . ')){' . "\n";
$docblock = new Zend_CodeGenerator_Php_Docblock();
$docblock->setShortDescription('Loads the entry from the database.');
$resultMethod->setDocblock($docblock);
$body .= "\t" . '$table = self::' . $this->_provideTableConstant() . ';' . "\n";
//TODO - Konstante!
$body .= "\t" . '$select = $this->zendDbObj->select($table, \'*\');' . "\n";
$pkeyAttributes = $this->getPersistenceInformation()->getPkeyAttributes();
if (!empty($pkeyAttributes)) {
foreach ($pkeyAttributes as $pkeyAttribute) {
/* @var $pkeyAttribute Zend_CodeGenerator_Php_Property */
$body .= "\t" . '$select->where(self::' . $this->_provideTableConstant() . '.\'.\'.self::' . $this->_provideColumnConstant($pkeyAttribute) . '.\'=?\', $this->' . $pkeyAttribute->getName() . ');' . "\n\n";
}
}
$body .= "\t" . 'self::$instance' . $keysString . ' = new self($parZendDbObj);' . "\n";
$body .= '}' . "\n\n";
$body .= 'return self::$instance' . $keysString . ';';
$resultMethod->setBody($body);
$this->getClass()->setMethod($resultMethod);
}
示例4: createParam
/**
* Create a CodeGenerator parameter
*
* @param string $name
* @param null|string $type
* @param null|bool $reference
*
* @return Zend_CodeGenerator_Php_Parameter
*/
public static function createParam($name, $type = null, $reference = null)
{
$param = new Zend_CodeGenerator_Php_Parameter();
$param->setName($name);
if (!empty($type)) {
$param->setType($type);
}
if ($reference === true) {
$param->setPassedByReference(true);
}
return $param;
}