我有标签装饰器的问题.当我生成一个表单时,我有这样的事情:
<label id="user_email-label"><label for="user_email" class="required">e-mail</label>
</label>
<input type="text" name="user_email" id="user_email" value="" class="span4">
Run Code Online (Sandbox Code Playgroud)
但是我需要 :
<label for="user_email" class="required">e-mail</label>
<input type="text" name="user_email" id="user_email" value="" class="span4">
Run Code Online (Sandbox Code Playgroud)
我的代码:
$oText = new Zend_Form_Element_Text('user_email');
$oText->clearDecorators();
$oText->setLabel($oTranslate->translate('e-mail'));
$oText->setAttrib('class','span4');
$oText->setRequired(true);
$oText->addValidator('NotEmpty', true);
$oText->addValidator('StringLength', true, array('max' => 200));
$oText->addValidator('EmailAddress', true);
$oText->addDecorator('ViewHelper');
$oText->addDecorator('Errors');
$oText->addDecorator('Label',array('tag'=>'label', 'placement' => 'prepend'));
$oText->setFilters(array('StringToLower','StringTrim'));
$this->addElement($oText);
Run Code Online (Sandbox Code Playgroud)
我的第二个问题是如何在标签内放置一个复选框?当我做这样的事情时:
$oCheckbox = new Zend_Form_Element_Checkbox('remember_me');
$oCheckbox->setLabel($oTranslate->translate('remember me'));
$oCheckbox->setChecked(true);
$oCheckbox->addDecorator('HtmlTag',array('tag'=>'label','class'=>'checkbox muted'));
$oCheckbox->removeDecorator('DtDdWrapper');
$oCheckbox->addDecorator('Label',array('tag'=>'label'));
$this->addElement($oCheckbox);
Run Code Online (Sandbox Code Playgroud)
我有:
<label class="checkbox muted">
<input type="hidden" name="remember_me" value="0"><input type="checkbox" name="remember_me" id="remember_me" value="1" checked="checked"></label>
<label id="remember_me-label"><label for="remember_me" class="optional">remember me</label></label> …Run Code Online (Sandbox Code Playgroud) 我尝试使用Zend_Db_Select在FROM部分中使用子查询构建查询.我正在寻找这样的事情:
SELECT COUNT(row_1) AS count_row FROM (SELECT row,row2,... FROM table WHERE row= ...) AS temp WHERE row = 0)
Run Code Online (Sandbox Code Playgroud)
所以我尝试这样做:
$oSubSelect =
$this->select()
->setIntegrityCheck(false)
->from('table',
array(
'row_id'
)
)
->where(PRFX.'table.id = '.PRFX.'table2.id')
->from(PRFX.'table2',array('row','row2'));
$this->select(false)
->setIntegrityCheck(false)
->from(new Zend_Db_Expr($oSubSelect).' AS temp',
array(
'COUNT(row_id) AS row_count',
)
);
Run Code Online (Sandbox Code Playgroud)
但这给了我一个错误信息.最好的祝福.
我使用这个库https://github.com/smsapi/smsapi-php-client从网站发送短信。但是当我尝试处理服务中的基类时遇到了问题。所以我的问题是有没有办法用参数调用静态方法?我尝试通过工厂来做到这一点,但这对我不起作用。这是我的代码:
smsapi.client:
class: SMSApi\Client
factory: ['SMSApi\Client', createFromToken]
properties:
attributes: '%smsapi_token%'
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误:
Warning: Missing argument 1 for SMSApi\Client::createFromToken(), called in ../cache/dev/appDevDebugProjectContainer.php on line 5073 and defined
Run Code Online (Sandbox Code Playgroud)