草庐IT

Hash_class

全部标签

php - ZF + 学说 2 : Heavy model classes or Lightweight model + Service layer?

我正在集成ZendFramework和Doctrine2,我正在探索服务层。现在我明白(我错了吗?)我有两种可能的架构:模型,其中类包含领域逻辑,即属性+getters/setters+复杂方法一个轻量级模型,其中类包含属性+getter/setter和一个服务层,包含领域逻辑,并修改模型类各自的优缺点是什么?在我看来,通过将领域逻辑置于模型外部来失去OOP似乎很奇怪,所以我不明白为什么要使用服务层。 最佳答案 是什么让您认为您的服务层外部在您的模型中?它不是。事实上,它是您模型的核心部分,还有实体、存储库等。如果您使用的是Doct

php - CakePHP 错误 : Class 'String' not found in Acl

我的Acl管理员已损坏,我不知道为什么,因为我没有更改它以前工作时的任何内容。当我转到/acl时,出现以下错误:Error:Class'String'notfoundFile:/app/Plugin/Acl/Controller/Component/AclReflectorComponent.phpLine:17publicfunctiongetPluginName($ctrlName=null){$arr=String::tokenize($ctrlName,'/');我检查了$ctrlName中的内容,值是Acl/Acl。我完全迷失在这里,我该怎么办?

php - 是什么导致错误 'Not Found SoftDeletingTrait Class' ?

我刚刚从Laravel4.1更新到4.2.7。我正在尝试使用SoftDelete删除:useSoftDeletingTrait;protected$dates=['deleted_at'];但这会给出错误“未找到SoftDeletingTrait类”。这个错误的原因是什么? 最佳答案 只需按类型调用它'useIlluminate\Database\Eloquent\SoftDeletingTrait;'useIlluminate\Database\Eloquent\SoftDeletingTrait;classUserextends

php - 在普通类(class)内访问服务

我的Symfony2项目中有一个常规类:classRangeColumnextendsColumn{//...}现在这个类里面有一个渲染函数,我想在这个函数中使用Twig或者Symfony2的翻译服务来渲染一个特定的模板。如何以正确的方式访问此服务? 最佳答案 代码示例:translator=$translator;}publicfunctionmyFunction(){$this->translator->trans('sentence_to_translate');}}如果您希望您的类(class)成为一项服务:在您的包中的se

php - 将 get_class 与 PHPUnit 模拟对象一起使用的测试代码

使用PHPUnit和模拟对象,我正在尝试测试一些代码,这些代码使用get_class来确定对象是否包含在过滤器中。这是要测试的类:classBlockFilterimplementsFilterInterface{private$classes;publicfunction__construct(array$classes=array()){$this->classes=$classes;}publicfunctionisIncluded(NodeTraversableInterface$node){if(Type::BLOCK!=$node->getDocumentType()){r

PHP 静态工厂方法 : dynamically instantiate instance of the calling class

此PHP问题与thisquestion有关,但有点不同。我有一个名为create()的静态工厂方法,它实例化一个类实例。我希望该方法动态实例化调用它的(子)类的实例。因此,它实例化的类必须在运行时确定。但是我想这样做而不必在子类中重新定义静态工厂方法(这在我的示例中是完全有效的,因为子类没有要初始化的新数据成员)。这有可能吗?classFoo{private$name;publicstaticfunctioncreate($name){//HEREINSTEDOF:returnnewFoo($name);//IWANTSOMETHINGLIKE://returnnewget_class

php - Laravel - 你如何使用 Hash::needsRehash()?

我想知道如何使用Hash::needsRehash(),因为我正在努力查看文档的用途。if(Hash::needsRehash($hashed)){$hashed=Hash::make('plain-text');}究竟是什么导致Hash::needsRehash()返回true或false,如果散列密码在另一个散列(例如MD5、SHA1等)中,它是否返回true?如果您的数据库中充满了另一种算法的哈希值,并且Hash::needsRehash()返回true,您将如何重新哈希用户密码以确保它们是最新的?您不能依赖“登录”密码,因为它需要先进行比较才能验证,对吧?我想也许我想太多了,但

PHP5.6 CLASS常量中允许数组

所以我们可以在PHP5.6中定义数组常量。但是,在类中定义数组常量时出现以下错误Arraysarenotallowedinclassconstants那么数组常量是允许的,但在类内部是不允许的吗? 最佳答案 从PHP5.6开始,类常量中允许使用数组。参见link一个有效的php代码。 关于PHP5.6CLASS常量中允许数组,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/3890

php - 了解 PHP password_hash 使用的 bcrypt salt

我在理解bcrypt如何使用盐时遇到了一些麻烦。我知道盐有什么用,但我不明白盐值是如何使用的。问题1:正确的盐长度是多少?我发现的所有来源都说,盐的长度为22,并且它与算法、成本和结果字符串中的实际哈希值一起存储。但是,我发现的所有实现都使用长度为32的盐。例如FOSUserBundle使用的Symfony使用以下代码来创建盐:$this->salt=base_convert(sha1(uniqid(mt_rand(),true)),16,36)由于sha1哈希长度为32个字符,因此生成的salt的长度也为32。这只是一个懒惰的实现,跳过将字符串修剪为22长度的代码,因为这是由bcry

php - 如何修复严格的标准 : Redefining already defined constructor for class

这个错误是在PHP5.4.3中抛出的,我找到的解决方案是隐藏错误。error_reporting(E_ALL^E_STRICT);但我想修复它,而不是隐藏它。你能解释一下为什么会抛出这个错误以及如何修复它吗?这是错误:StrictStandards:RedefiningalreadydefinedconstructorforclassVisanaObjectin/home/template/public_HTML/project/activecollab/angie/classes/VisanaObject.class.phponline33这是类的代码:classVisanaObje