草庐IT

anti-patterns

全部标签

javascript - 为什么 Angularjs ng-pattern 不能使用以下正则表达式?

出于某种原因,初始化值没有出现在该字段中,但没有ng-pattern的第二个字段确实有效。有什么想法吗?angular.module('app',[]).controller('MainCtrl',function($scope){$scope.widget={title:'abc',title2:'abc'};});input1:{{widget.title}}input2:{{widget.title2}}这是fiddlehttp://jsfiddle.net/wkzab/1/ 最佳答案 我也遇到了同样的问题。找到了执行此操作的

javascript - 是否可以将 ng-pattern 与变量一起使用

我对正则表达式很糟糕,但我想知道是否可以将ng-pattern与变量一起使用例如,ng-pattern="/^{{validationCode}}$/"其中validationCode是附加到Controller中$scope的变量//InsideController$scope.validationCode='responsereturnedfromserver'如果$scope.validationCode=1234123412351234那么ng-pattern就是ng-pattern="/^1234123412351234$/"但这行不通,似乎我需要创建一个我并不真正想要的自定

PHP MVC : Data Mapper pattern: class design

我有一个带有域对象和数据映射器的WebMVC应用程序。数据映射器的类方法包含所有数据库查询逻辑。我试图避免镜像任何数据库结构,因此,在构建sql语句时实现最大的灵active。因此,原则上,我尽量不使用任何ORM或ActiveRecord结构/模式。举个例子:通常,我可以有一个抽象类AbstractDataMapper由所有特定数据映射器类继承-如UserDataMapper类。然后我可以在AbstractDataMapper中定义一个findById()方法,通过给定的id值,例如用户身份。但这意味着我总是从单个表中获取记录,而不可能使用任何左连接来从对应于给定id-用户id的其他一

"start of string or pattern"的 PHP 正则表达式

这个问题在这里已经有了答案:Regexlookahead,lookbehindandatomicgroups(5个答案)关闭9年前。有没有办法(除了进行两个单独的模式匹配)在PHP中使用preg_match来测试字符串或模式的开头?更具体地说,我经常发现自己想要测试我是否有一个匹配模式,它前面没有任何内容,如preg_match('/[^x]y/',$test)(也就是说,如果y前面没有x,则匹配它),但如果它出现在$test的开头,则也匹配y(当它前面也没有x,但前面没有任何字符,因此[^x]构造将不起作用,因为它始终需要一个字符来匹配它。在字符串末尾也有类似的问题,以确定是否出现了

php - 身份验证组件 : Which pattern can I use? (PHP)

我正在尝试构建一个尽可能分离的身份验证组件,允许不同类型的身份验证(例如:http、摘要、数据库等),就像zend_auth:http://framework.zend.com/manual/en/zend.auth.html他们使用的模式有名字吗?你能推荐我一个不同的方法吗?也许是Bridge或Strategy模式? 最佳答案 根据您提供的链接:Zend_AuthprovidesanAPIforauthenticationandincludesconcreteauthenticationadaptersZend_auth本身就是S

php - 正则表达式帮助 : how to match only either pattern in a regex that contains "or" operator?

我正在使用php的preg_replace().基本上我有2种可能的字符串匹配:你好现实世界问候这是我希望完成的:HelloRealWorldGreetings规则解释:如果字符串包含空格,插入在第一个空格字符之后。如果字符串不包含空格(一个单词),则插入就在字符串的中间(+/-如果奇数字符计数)。到目前为止,我已经想出了一个长期有效的解决方案:",$str,1):preg_replace("/.{".round(strlen($str)/2)."}/","$0",$str,1);?>但是,我相信它可以通过一个更短、更优雅的正则表达式来完成,只有一个preg_replace()。打电话

php - 为什么服务定位器是以下示例中的反模式?

我有一个MVC应用程序,该应用程序具有定义明确的领域模型、实体、存储库和服务层。为了避免必须在我的Controller中实例化我的服务类,从而避免将我的Controller与不适合它们的逻辑混为一谈,我创建了一个助手,它充当一种ServiceLocator的角色。,但在阅读了一下之后,我意识到许多开发人员:http://blog.tfnico.com/2011/04/dreaded-service-locator-pattern.htmlhttp://blog.ploeh.dk/2010/02/03/ServiceLocatorIsAnAntiPattern.aspxhttp://un

php - 设计模式——反模式调用超——避免或保留

我最近注意到在某些情况下我真正喜欢做的事情(调用super)是一种反模式。(http://en.wikipedia.org/wiki/Call_super)所以我的问题是:Howtodothefollowingthing(我们大多数人都需要的一个基本的东西,给一个对象添加一些细节)。我将向保存在对象var中的数组添加一个新元素:_data['newDetail']="Ipiicaei";}}classBextendsA{//blablabla//Overrideconstructor,Ineedtoaddonemoredetailforthisclasspublicfunction__

php - 如何替换嵌套的 switch 语句

我被要求编写一个小的PHP脚本,它从几个下拉框中获取一些POSTed输入,这些下拉框提供了一些可选择的条件,最后吐出一个或多个包含唯一代码的字符串变量。变量names的格式为$thingPlaceType,并且每个都是唯一的。下拉框允许选择:一个“事物”或所有“事物”一起一个“地点”或所有“地点”一起一种“类型”或所有“类型”一起如果不借助嵌套的switch语句,我不知道如何选择这些代码switch($_POST['thing']){case"thing1":switch($_POST['place']){case"place1":switch($_POST['type']){case

java - 数据库作为 IPC 反模式

我编写了一个分层Web应用程序,它包含一个与Java服务交互的富Web客户端(PHP)。Web客户端托管在apache服务器上,java服务运行在同一台物理机上(重申一下:整个应用程序、客户端和服务都运行在同一台物理机上)。用户请求-->DBRequestHandler-->StoreResultinDB-->WebClient使用结果(AJAX)更新页面。客户端和服务之间的通信使用关系数据库来传递消息。java服务有一个单线程轮询器,它查找并处理来自客户端的任何消息/请求。该系统有效,但我对我的设计选择没有信心。有人对这个策略有什么意见吗?我读过使用数据库作为IPC反模式是不好的做法