ThinkPHP中实例化对象M和D的区别

边双喜 2019-11-05 21:41:00

推荐回答

D和M的区别主要在于M方法不需要创建模型类文件,M方法不会读取模型类,所以默认情况下自动验证是无效的,但是可以通过动态赋值的方式实现而D方法必须有创建模型类。我们可以用下面两种方法去创建一个数据表的映射对象第一种:$Test=D‘Test’第二种:$Test=newModel‘Test’虽然这两种都可以对数据进行select,insert,delete,udpate操作,在数据验证上有很大的不同,用第一种方式实例一个模型就会有数据检查功能,如果title没有填写的话就会提示“请输入标题”来动态的实例化一个Model对象,即使这个对应的Model文件不存在。再通俗一点说:M实例化参数是数据库的表名。D实例化的是你自己在Model文件夹下面建立的模型文件。D就是在你没有定义模型的时候,系统自动帮你定义一个模型,这样你才进行简单的数据输入或者输出。每一个Action文件都应该对应Model文件的,如果你定义了Model的话,如:$Form=D“User”就可以改成$Form=newUserModel;User是指你的模型文件名。
齐晓刚2019-11-05 22:03:15

提示您:回答为网友贡献,仅供参考。

其他回答

  • M实例化参数是数据库的表名。D实例化的是你自己在Model文件夹下面建立的模型文件。D就是在你没有定义模型的时候,系统自动帮你定义一个模型,这样你才进行简单的数据输入或者输出。如果D方法没有找到定义的模型类,则会自动调用M方法。
    赵风群2019-11-05 23:02:51
  • ThinkPHP中M方法和D方法都用于实例化一个模型类,M方法用于高效实例化一个基础模型类,而D方法用于实例化一个用户定义模型类。使用M方法如果是如下情况,请考虑使用M方法:对数据表进行简单的CURD操作而无复杂的业务逻辑时只有个别的表有较为复杂的业务逻辑时,将M方法与实例化CommonModel类进行结合使用M方法甚至可以简单看着就是对参数表名对应的数据表的操作:$User = M''User'';使用D方法如果是如下情况,请考虑使用D方法:需要使用ThinkPHP模型中一些高级功能如自动验证功能,而想在操作中实现这些业务逻辑另外D方法不支持跨项目调用,需要使用:$User = D''User'', ''Admin'';    // 实例化 Admin 项目下面的 User 模型 $User = D''Admin.User'';        // 启用了项目分组提示启用了项目分组后,Model类并不必然对应着项目分组。多个项目组之间共有的模型类,统一放在Model目录下,可以直接使用D''ModelName''实例化。而D''User.UserInfo''并不表示User一定是一个项目分组,也可以仅仅是对Model下文件的一个分类目录,D''User.UserInfo''实例化的是User目录下的UserInfo模型类。总结M方法和D方法都可以在模型类文件不存在的情况下直接使用的,但显然M方法更高效;但要使用模型类里面业务逻辑,就必须使用D方法。一个比较形象的比喻就是:M方法就如一台刚装好操作系统的电脑,只能使用一些基本功能;而D方法就如在装好的系统上再安装了一些如Office、QQ等应用软件,功能更加强大,同时整个电脑运行速度也变慢了。以上是对M方法和D方法区别的一些总结,M方法和D方法要根据实际情况来具体选择。
    齐旭明2019-11-05 22:20:18
  • ThinkPHPMD都用于实例化模型类M用于高效实例化基础模型类D用于实例化用户定义模型类使用M情况请考虑使用M:数据表进行简单CURD操作复杂业务逻辑别表较复杂业务逻辑M与实例化CommonModel类进行结合使用M甚至简单看着参数表名应数据表操作:$User=M''User'';使用D情况请考虑使用D:需要使用ThinkPHP模型些高级功能自验证功能想操作实现些业务逻辑另外D支持跨项目调用需要使用:$User=D''User'',''Admin'';//实例化Admin项目面User模型$User=D''Admin.User'';//启用项目组提示启用项目组Model类并必应着项目组项目组间共模型类统放Model目录直接使用D''ModelName''实例化D''User.UserInfo''并表示User定项目组仅仅Model文件类目录D''User.UserInfo''实例化User目录UserInfo模型类总结MD都模型类文件存情况直接使用显M更高效;要使用模型类面业务逻辑必须使用D比较形象比喻:M台刚装操作系统电脑能使用些基本功能;D装系统再安装些Office、QQ等应用软件功能更加强同整电脑运行速度变慢MD区别些总结MD要根据实际情况具体选。
    边双燕2019-11-05 22:06:24

相关问答

公开募集设立是股份有限公司设立的一种方式,还一种是发起设立。公开募集设立股份公司,需要经证监会核准,设立之后其股票不必然上市,需要上市交易还需要经证券交易所审核。公开募集就是向社会公开募集。即,向不特定对象募集,或向超过200个特定对象募集,均为公开募集。如前所言,不管你是否上市,只要是公开募集,都需要经证监会核准。定向募集,就是向不超过200个特定对象募集。如果超过200个,则成为公开募集。公开募集与定向募集的股票并无区别,都需要符合公司法中关于股票的规定。IPO,意指股份公司第一次公开募集,其并无特别含义。从理论上来说,IPO之后也并不必然上市交易。但是实践中则是,IPO的目的就是股票上市交易。所以现实中IPO与申请上市交易是同时紧密进行的。上市交易的条件当然比公开募集的条件严苛,所以为准备上市的公开募集,就会依照证券法对上市的要求,安排好股本总额和股权结构以及财务会计报告等等。扩展资料我国《公司法》第77条第3款规定:“募集设立,是指由发起人认购公司应发行股份的一部分,其余股份向社会公开募集或者向特定对象募集而设立公司。所以,募集设立既可以是通过向社会公开发行股票的方式设立,也可以是通过向特定对象发行股票的方式而设立。这种方式只为股份有限公司设立之方式。由于募集设立的股份有限公司资本规模较大,涉及众多投资者的利益,故各国公司法均对其设立程序严格限制。如为防止发起人完全凭借他人资本设立公司,损害一般投资者的利益,各国大都规定了发起人认购的股份在公司股本总数中应占的比例。我国的规定比例是35%。公司法》第七十八条规定:设立股份有限公司,应当有二人以上二百人以下为发起人,其中须有半数以上的发起人在中国境内有住所。证券法》第十条规定:公开发行证券,必须符合法律、行政法规规定的条件,并依法报经国务院证券监督管理机构或者国务院授权的部门核准。未经依法核准,任何单位和个人不得公开发行证券。有下列情形之一的,为公开发行:法律、行政法规规定的其他发行行为。综合以上条款,可见向特定对象发行证券累计超过二百人设立公司的,肯定是募集式设立。募集设立—上市。
房地产信托面临的风险
1.国家宏观政策影响
当前中国房地产业发展面临复杂多变的宏观政策形势随着央行121号文件和国务院18号文件的出台房地产通过银行融资的难度增大信托公司的竞争优势虽然开始显 现但同时也将风险转移了过来2005年银监会出台了212号文件明确提高了现在贷款类的房地产信托门槛原来占60%以上的房地产信托门槛提高了因此影响到 了信托投资公司房地产信托的规模和发展。
2.房地产自身行业风险
房 地产投资增长率与国家经济增长速度相一致国家对房地产政策的调整直接关系到房地产信托例如上个世纪九十年代房地产的繁荣和衰退都是国家产业政策宏观调控的 结果如果房产价格上涨幅度超过了居民消费承受能力就可能存在房地产泡沫如果泡沫达到一定程度就必然影响到房地产信托根据建设部政策研究中心最新发表的调查 报告显示2005年1—12月份我国房地产投资增幅不断降低其直接原因就是国家针对局部地区房地产行业可能出现的风险进行了宏观调控房地产自身行业风险增 加了信托投资公司房地产信托产品的风险。
3.项目自身及市场风险
信 托投资公司通过控制抵押率、向项目公司派驻管理人员等控制项目风险但这些风险控制措施都有一定的局限性即使是投资于成熟物业的房地产信托也需要公司拥有专 业的房地产投资分析和投资管理人员市场风险是由于价格变动而造成信托投资公司固有财产或信托财产损失的风险主要有利率风险、汇率风险、价格风险、通货膨胀 风险等这种风险可分为系统分险和非系统风险是信托投资公司风险的主要来源之一因而把握房地产市场的变化和走势必须系统考虑国家宏观调控政策、利率调整、消 费文化等因素而相关行业的发展情况、土地供应、建筑材料价格、消费者购买力等诸多因素的变化也可能导致房地产市场价格产生较大的波动。
4.产品设计上的缺陷
信托投资公司房地产信托产品的主要缺陷是没有引入保险公司的保险概念即一旦项目灭失或者损害基本都是由投资者买单公司的项目推介人员也是承认具有这样的设计缺陷但是如果真的小概率事件出现了那么投资者便会遭受巨大的损失。
5.信息不对称
为 了合作和共同的利益房地产企业和信托投资公司间存在隐瞒事实的问题比如和该公司合作的某房地产企业为了融到资金只证明了自己的经验和实力避讳自己曾经在项 目上出现的诚信和管理事故等问题而信托投资公司也未能深入考察企业的真实情况如企业的过去和现在的内在管理能力、财务风险防范能力等而信托投资者对此风险 的真实程度可能只凭借信托投资公司出据的书面或者口头上的说明去判断因此由于信息的不对称真实的情况往往会被部分掩盖或者忽视。
6.财产流动性风险
信托投资公司房地产信托的信托财产多以土地、房屋、股权等形态表现担保措施主要为土地、房屋等固定资产抵押如果融资方未能按期偿还本息公司又无法及时变现信托财产或行使抵押权则可能产生流动性风险。
7.财产所有权风险
《信 托法》总则第二条指出信托是指委托人基于对受托人的信任将其财产委托给受托人由受托人按委托人的意愿以自己的名义为受托人的利益或特定目的进行管理或处分 的行为我国的信托业建立在“委托”制度基础上委托行为不需要财产权的转移信托财产的所有权属于委托人受托人只是把信托财产制与可控的位置这样做虽然信托投 资公司可以利用信托制度规避法律法规如逃避债务和税收等从而保护委托人的债权人利益和不知情的第三者的利益但当业务中涉及以所有人的名义进行经济活动时如 购买股票、银行开户、缴纳税款等信托投资公司由于不是信托财产的所有人在操作中会面临许多困难处理不当会形成所有权风险。
8.信托公司管理不善风险
《信 托法》规定受托人违背信托目的处分信托财产或因违背管理职责、处理信托事务不当致使信托财产遭受损失的承担赔偿责任信托投资公司在实际业务操作中可能存在 着这些行为产生大量的投资风险和财务风险在信托投资业务中信托投资公司追求最高的回报率在缺乏有效的风险控制的情况下由于投资项目和合作项目选择不当时投 资的实际收益低于投资成本或没达到预期收益、资金运用不当而形成风险。