本文整理匯總了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;
}