我想显示一个Zend表单,其中一个元素显示为禁用.我正在设置值,以便用户可以看到它,但我想禁用它,以便用户无法编辑它.这可能还涉及某种css/javascript,以确保它看起来像用户不可编辑.这是我的要素:
$this->addElement('text', 'username', array(
'label' => 'Username:',
'required' => true,
'filters' => array('StringTrim'),
'validators' => array(
array('StringLength', false, array(2, 50))
)
));
Run Code Online (Sandbox Code Playgroud) 我正在按照一个教程,我认为这个教程是由一个不知道他在做什么的人编写的(已经发现了两个明显的错误而其余的代码都很混乱).但我不想完全诋毁这个人,所以我在这里问一些我不理解的事情.
首先,我会发送100个布朗尼点,我的2只宠物和一盒巧克力给任何可以向我解释这个代码发生了什么的人.
他正在使用基于模块的架构.模块名称是frontmodule.模块有MVC.模块有library自己的内部.
/modules/
/frontmodule/
/models/
/views/
/controllers/ -- the /module controller is here (undestandable)
/library/
/Controller/ -- the /module/library controller is here (why?!)
/Action/
Run Code Online (Sandbox Code Playgroud)
首先是令人困惑的部分.为什么每个模块都有一个内部库,以及为什么那个内部库有自己的controllers和actions.这是最佳做法吗?我想这个库可以移动到模块可以使用的插件.不确定..
现在是有趣的部分....除了每个模块都有自己的内部库之外,还有一个由所有模块共享的公共库(请参见下面的相同文件夹级别/modules),并且Common库也有自己的控制器和动作(就像每个内部库都有自己的控制器和动作)
/modules
/library/
/Common/
/Controller/ -- the /common/library controller is here (why?!)
/Action/
/Helper/
/Plugin/
Run Code Online (Sandbox Code Playgroud)
所以我们有3个控制器:
现在这里是我认为过度复杂生活的疯狂部分
他说:模块控制器扩展了模块的库父控制器,它也扩展了公共库控制器.
class IndexController
extends Frontoffice_Library_Controller_Action_Abstract { ... }
abstract class Frontoffice_Library_Controller_Action_Abstract
extends Custom_Controller_Action_Abstract { ... }
Run Code Online (Sandbox Code Playgroud)
所以我想:
我的htaccess上有以下内容.
SetEnv APPLICATION_ENV development
Run Code Online (Sandbox Code Playgroud)
当我将此文件传递给prodution时,我将其更改为:
SetEnv APPLICATION_ENV production
Run Code Online (Sandbox Code Playgroud)
这个
发展
和
生产
在Zend Framework application.ini上设置正确吗?
Zend和Apache如何在这里交流?Zend如何知道htaccess指令?
谢谢.
我知道这已经做了很多次了(有些帖子真的很旧,所以根据当前的播放状态获得反馈会很好),但是我希望人们建议我们使用哪个框架来构建我们即将推出的新应用程序开始发展.尽管我们根据ZEND建立了一切,但现在客户的投资者需要知道我们选择Zend的原因.
它是在基础上选出的,5个开发人员中有2个熟悉Zend.现在客户想要详细解释为什么我们没有选择Symfony而不是Zend.我们的理由还不足以支持我们的选择;)所以帮助我选择哪个框架比其他框架具有什么优势,这样我们就可以为他提供坚实的理由(对于zend),如果symfony有更多+ ves那么我们为什么选择它(symfony) )现在.我们现在可以改变我们的框架.
我想正确的答案是'取决于你的应用程序和你自己的要求/偏好'所以这里是一个应用程序的简要描述和我们自己的一些要求:
一种金融交易系统,提取在全球数千/数百万POS上完成的实时交易数据.
项目很少有重要的事情:
数据库已经提供给我们,它是一个ORACLE数据库.
Oracle数据库有超过86个表.一些表目前有超过60000行数据,其中一些还有79列.
使用这些框架的人(特别是那些使用过这两种框架的人)的任何反馈都将非常感激.
Zend不是强制性的,但如果改为symfony,我们需要支持.所以用原因,链接支持你的答案.
谢谢.
我想构建一个PHP扩展,可以动态检查从PHP文件生成的每个操作码并对其进行一些检查.
我遇到了几个网站,发现了一些功能zend_set_user_opcode_handler,但我不明白这个功能如何用来获得完整的操作码ASSIGN !0, 50.
我知道一个命令php -d vld.active=1 -d vld.execute=0 -f [filename].php,我可以使用它来生成PHP操作码,但据我所知,你只能在PHP程序终止后访问操作码.
我想从扩展中得到的是一个操作码,它是在函数执行时逐个(动态地)获得的.
有人可以帮我解决这个问题吗?
我听过"部署应用程序"这个短语比将个别更改的文件上传到服务器听起来好多了/更容易/更可靠,但我不知道从哪里开始.
我有一个受版本控制的Zend Framework应用程序(在Subversion存储库中).如何"部署"我的应用程序?如果我有一个"上传"目录,我不想覆盖,该怎么办?
我通过第三方托管我的应用程序,所以除了FTP之外我不太了解.如果其中任何一项涉及登录我的服务器,请解释该过程.
我有一个基于快速启动设置的Zend Framework应用程序.
我已经让演示工作了,现在我正在实例化一个新的模型类来做一些真正的工作.在我的控制器中,我想将配置参数(在application.ini中指定)传递给我的模型构造函数,如下所示:
class My_UserController extends Zend_Controller_Action
{
public function indexAction()
{
$options = $this->getFrontController()->getParam('bootstrap')->getApplication()->getOptions();
$manager = new My_Model_Manager($options['my']);
$this->view->items = $manager->getItems();
}
}
Run Code Online (Sandbox Code Playgroud)
上面的例子允许访问选项,但似乎非常圆.有更好的方法来访问配置吗?
通常,这对我有用:
$db = Zend_Db_Table::getDefaultAdapter();
$where = $db->quoteInto('id = ?', $id);
$db->delete('tablename', $where);
Run Code Online (Sandbox Code Playgroud)
但我必须匹配两个ID.所以我真的不知道如何构建它.
WHERE first_id = 'id1' AND second_id = 'id2'
Run Code Online (Sandbox Code Playgroud)
那么我如何使用Zend Framework做到这一点?
使用Zend Framework 1.10和Doctrine 2(Beta1)启动项目.我在自己的库代码中使用命名空间.
生成代码覆盖率报告时,我收到有关重新声明类的致命错误.为了提供更多信息,我在我的phpunit可执行文件中注释掉了xdebug_disable()调用,这样你就可以看到函数trace(由于输出太多而禁用了局部变量输出).
这是我的终端输出:
$ phpunit
PHPUnit 3.4.12 by Sebastian Bergmann.
........
Time: 4 seconds, Memory: 16.50Mb
OK (8 tests, 14 assertions)
Generating code coverage report, this may take a moment.PHP Fatal error: Cannot redeclare class Cob\Application\Resource\HelperBroker in /Users/Cobby/Sites/project/trunk/code/library/Cob/Application/Resource/HelperBroker.php on line 93
PHP Stack trace:
PHP 1. {main}() /usr/local/zend/bin/phpunit:0
PHP 2. PHPUnit_TextUI_Command::main() /usr/local/zend/bin/phpunit:54
PHP 3. PHPUnit_TextUI_Command->run() /usr/local/zend/share/pear/PHPUnit/TextUI/Command.php:146
PHP 4. PHPUnit_TextUI_TestRunner->doRun() /usr/local/zend/share/pear/PHPUnit/TextUI/Command.php:213
PHP 5. PHPUnit_Util_Report::render() /usr/local/zend/share/pear/PHPUnit/TextUI/TestRunner.php:478
PHP 6. PHPUnit_Framework_TestResult->getCodeCoverageInformation() /usr/local/zend/share/pear/PHPUnit/Util/Report.php:97
PHP 7. PHPUnit_Util_Filter::getFilteredCodeCoverage() /usr/local/zend/share/pear/PHPUnit/Framework/TestResult.php:623
Fatal error: … 我刚刚在Zend Framework的HTTP Auth库中遇到了这段代码.它似乎使用特殊的字符串比较功能,使其更安全.但是,我不太明白这些评论.有人可以解释为什么这个功能比做的更安全$a == $b吗?
/**
* Securely compare two strings for equality while avoided C level memcmp()
* optimisations capable of leaking timing information useful to an attacker
* attempting to iteratively guess the unknown string (e.g. password) being
* compared against.
*
* @param string $a
* @param string $b
* @return bool
*/
protected function _secureStringCompare($a, $b)
{
if (strlen($a) !== strlen($b)) {
return false;
}
$result = 0;
for ($i = 0; $i < …Run Code Online (Sandbox Code Playgroud)