目錄
回复讨论(解决方案)
首頁 後端開發 php教程 yii2是最好的框架,不服来辩

yii2是最好的框架,不服来辩

Jun 20, 2016 pm 12:45 PM

我用yii开发过程中,感觉自己需要写的代码特别少。

先谈谈最基本的单数据表模型吧:
直接使用crud生成,然后根据自己需要的功能修改下就ok

两个表关联模型,当数据表设置了外键之后,yii2在生成model时候,自动会添加关联关系
比如你要添加产品的同时,还需要添加多个图片到产品图片数据表

这个在yii2非常简单,你只需要处理下post数据就ok

举个例子,两个model  1product 2productImg
只需要把post数据处理成这样 
=[
'product'=>[
    '相关字段',
    'productImg'=>[0][图片表相关字段]
]
]

使用下yii一个ar relation扩展,就可以在执行$product->save()方法时候,自动添加productImg  数据

修改数据也不用管,非常的智能化,自己需要写的代码不超过20行

而且这个支持复杂的多表关联,只要你建立好外键,处理好post数据,一切就ok,yii2就是这么强大

数据验证,数据安全yii2做的也很好,通过场景概念,你可以只容许需要的字段数据传送过来
通过简单的验证规则配置,就可以实现各种各样的验证功能,还可以自定义方法,匿名函数

yii2最大的缺点可能是对pher技术要求较高和yii2文档不太全,需要懂yii2内核才能完美发挥yii2优势

还有一些acf,rbac,di,user,等等用起来也很方便,推荐大家使用

如果你没深入了解yii2内核,还请对yii2尊重点,整天拿着个国产框架秀什么优越感


回复讨论(解决方案)

本来目前做的一个商城项目,我主要做产品这一块,大概用了十二个数据表,模仿的淘宝sku构架设计,感觉yii2确实很强大,代码写的很少。我现在写的js代码我感觉比php都还多

如果你没深入了解国产框架内核,还请对国产框架尊重点,整天拿着个yii秀什么优越感

要是用ecshop做商城连一句代码都不用写!
我个人对框架的要求是干净整洁轻量,规范严谨,基础类库久经考验,第三方类库易扩展,路由强大而不繁杂
跟你恰恰相反,我希望除了框架本身能用到的代码以外,不希望框架自动生成任何跟我的业务逻辑有关系的代码
而且至今我也没有发现有任何一个框架自动生成代码的功能可以满足我的业务需求的

用ecshop做商城连一句代码都不用写!

楼主请参考    http://bbs.csdn.net/topics/390839161  

本来目前做的一个商城项目,我主要做产品这一块,大概用了十二个数据表,模仿的淘宝sku构架设计,感觉yii2确实很强大,代码写的很少。我现在写的js代码我感觉比php都还多


虽然我也使用YII。但也没想过说YII最强大。框架只能说适合不适合。殊不知还有更快更效率的框架 如yaf。多看点框架没坏处

a

如果你没深入了解国产框架内核,还请对国产框架尊重点,整天拿着个yii秀什么优越感



一年半经验,用过一年的ci,还有某个国产不知名的框架已经phpcms内置的小框架

要是用ecshop做商城连一句代码都不用写!
我个人对框架的要求是干净整洁轻量,规范严谨,基础类库久经考验,第三方类库易扩展,路由强大而不繁杂
跟你恰恰相反,我希望除了框架本身能用到的代码以外,不希望框架自动生成任何跟我的业务逻辑有关系的代码
而且至今我也没有发现有任何一个框架自动生成代码的功能可以满足我的业务需求的



我开发的是一个多商家有用户的大型分销批发商城系统,数据表就要40多个,两个人用了2个月做完了,你告诉我ecshop怎么做?

楼主请参考    http://bbs.csdn.net/topics/390839161  



这个人我那天聊过,他跟我说3个月没写过php了,然后我们交流一些技术问题,他都是已不搞技术很多年,不知细节回答我。

优越不优越不知道,从学习成本、开发工具支持、维护成本来说我选择Yii,具体个人考虑以下几方面

PHP及其面向对象、MVC模式、无额外标签、目录结构及插件机制、关系数据模型AR映射,内部已经结合了jQuery、可扩展Bootstrap、比较完善的UI支持、验证和安全机制比较完善、目前来说很稳定也比较安全、开发工作量相对小,另外开发工具比如:PhpStorm的支持比较好,性能也不错。

就这些吧

我也在用YII2,确实是我用过的最好的框架。
但是从某些方面说,没有最好的框架,比如你觉得YII的快速开发和安全什么的做得比较好,但是效率呢?能和鸟哥的yaf比么?什么东西都没有十全十美,有好处必定也有坏处。

这样的论战有意思么? 合适的框架与合适的实际需求在一起就很好。

没有最好的框架,只有最合适的框架

得看做什么了。。也有很多其他优秀的框架。。。

求指导,怎么开始PHP

yii实在是一个比较垃圾啊的框架,用过才知道。

1、执行速度?
了解他的路由就知道,也容易出现单文件瓶颈。


2、开发速度?
别人给你一套切好的图,你嵌入试试。
别人要修改这些页面,也来试试。


3、学习难度?
全面重塑,为毛?有多少必要?
程序员解放了,只是m解放了。
v呢?让一个美工切图工去看看,这是毛?


4、部署难度?
在linux上部署一下就知道了?
这是毛?
安全了吗?


5、真是不知道这个框架的塑造这是不死足够自我意淫的,弄出个这样的东东,比开发一套新的php编译器都要复杂了。
强烈建议大家抛弃这样的垃圾东西,不要害人害己了。

一家之言,也是一人的体会,不要太介意,反正我是恨极了这个玩意儿的。
学了之后,宛若看翔。
蓝翔技校也学习yii吗?

我手上的项目被指定用Yii2开发了,搜资料的时候看到这个文章就进来说两句。

首先,Yii和大多数框架一样,属于伪框架,是开发人员的代码累计后整理并框架化产生的。不论创始人是多么强大的架构师,但是他也不能自己写所有代码,而编码的人与设计者的境界差异也是伪框架产生的原因之一。Zend Framework是我深入了解过的框架中最优秀的( 不是最好用的,这两者不等价),它从设计到推出都是以框架为目标,而不是工具集,这是这两种框架的本质差别。

就我用到的部分说两个有代表性的问题:
1- Request::redirect()方法
我想每个人都知道redirect是什么意思,但是Yii2中该方法的完整用法为:
\Yii::$app->request->redirect($url)->send(); \Yii::$app->end();
什么意思呢,如果你不执行end()方法,那么就不会跳转,直到所有代码运行结束。由此可见,更好的方式是将该方法更名为setRedirectUrl()。请问,如果我不需要立即跳转为何要调用这个方法呢?方法名字与行为不一致是不是属于非常严重的bug呢?

2- View::render() 和 View::renderAjax() 功能界定模糊
对于一个ajax请求,render方法可以识别,不会将layout输出,但是却不会输出已注册的js,必须使用renderAjax()才行。既然这样render就不要针对ajax处理好不好?很容易让人误解的。

其它类似的问题很多,比如load和setAttributes功能近似等,从而可以很确定的说至少Yii2的代码语义问题是很多的。

总结:Yii2确实提升了开发速度,但是由于工具化的结构和过度封装导致在特定情景下反而影响了正常开发,即 Yii2确实好用,但是也就是个高级的工具集,就框架而言最多是个入门级,所以它肯定不是最好的框架。Yii2只注重了利用工具方法提升了开发效率而完全没有注意到框架核心的众多问题,失败。

附言:我把Yii分为内核,中坚和工具箱,工具箱可以解决项目中超过80%的问题,此外就依靠中坚层提供的基础方法实现,这时你会发现华丽外表下的二了。

‘hello world!’是世界上开发最快的程序,适用各种语言,不服来辩!


要是用ecshop做商城连一句代码都不用写!
我个人对框架的要求是干净整洁轻量,规范严谨,基础类库久经考验,第三方类库易扩展,路由强大而不繁杂
跟你恰恰相反,我希望除了框架本身能用到的代码以外,不希望框架自动生成任何跟我的业务逻辑有关系的代码
而且至今我也没有发现有任何一个框架自动生成代码的功能可以满足我的业务需求的



我开发的是一个多商家有用户的大型分销批发商城系统,数据表就要40多个,两个人用了2个月做完了,你告诉我ecshop怎么做?
它分明是在黑ecshop。ecshop那种东西是人用的吗?整一个石器时代。



要是用ecshop做商城连一句代码都不用写!
我个人对框架的要求是干净整洁轻量,规范严谨,基础类库久经考验,第三方类库易扩展,路由强大而不繁杂
跟你恰恰相反,我希望除了框架本身能用到的代码以外,不希望框架自动生成任何跟我的业务逻辑有关系的代码
而且至今我也没有发现有任何一个框架自动生成代码的功能可以满足我的业务需求的



我开发的是一个多商家有用户的大型分销批发商城系统,数据表就要40多个,两个人用了2个月做完了,你告诉我ecshop怎么做?
它分明是在黑ecshop。ecshop那种东西是人用的吗?整一个石器时代。

虽然如此,不过像dedecms、discuz、ecshop这些影响真的太大了,还有函数编程的wordpress、phpmyadmin。。。。
phpmyadmin wordpress 根本就没用什么MVC,老一辈的PHP程序就是这样的。

某女:你能让这个论坛的人都吵起来,我就跟你约会. 某软件工程师:PHP是最好的语言! 某论坛炸锅了,各种吵架... 某女:服了你了,我们走吧 某软件工程师:今天不行,我一定要说服他们,PHP必须是最好的语言

某女:你能让这个论坛的人都吵起来,我就跟你约会. 某软件工程师:PHP是最好的语言! 某论坛炸锅了,各种吵架... 某女:服了你了,我们走吧 某软件工程师:今天不行,我一定要说服他们,PHP必须是最好的语言



我喜欢这个段子

框架没有最好用,只有最合适

雏鸟喜欢成型框架,喜欢自动生成,方便快捷,老鸟喜欢自己写框架,更有掌控力,没啥好坏之分

怎么方便安全,怎么来,所以选择yii

怎么会有最好的框架呢。。。

我用zend,cakephp,ci,thinkphp,yii。最好用的是thinphp,最不好用的是YII,目前我用了Yii半年,除了自动生成model,我没有觉得Yii有任何好处!

我用zend,cakephp,ci,thinkphp,yii。最好用的是thinphp,最不好用的是YII,目前我用了Yii半年,除了自动生成model,我没有觉得Yii有任何好处!


赞同!

瞎扯淡,框架只有合不合适,没有最好,你用YII做个人博客试试,连WordPress的屁股都摸不着,老夫给你句忠告:莫装逼!!!

之前用tp,现在用Yii,感觉tp好,没有为什么

请教
http://bbs.csdn.net/topics/391854288

谢谢

 请楼主百度,世界最流行的PHP框架排名!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1319
25
PHP教程
1269
29
C# 教程
1248
24
PHP和Python:比較兩種流行的編程語言 PHP和Python:比較兩種流行的編程語言 Apr 14, 2025 am 12:13 AM

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

說明PHP中的安全密碼散列(例如,password_hash,password_verify)。為什麼不使用MD5或SHA1? 說明PHP中的安全密碼散列(例如,password_hash,password_verify)。為什麼不使用MD5或SHA1? Apr 17, 2025 am 12:06 AM

在PHP中,應使用password_hash和password_verify函數實現安全的密碼哈希處理,不應使用MD5或SHA1。1)password_hash生成包含鹽值的哈希,增強安全性。 2)password_verify驗證密碼,通過比較哈希值確保安全。 3)MD5和SHA1易受攻擊且缺乏鹽值,不適合現代密碼安全。

PHP行動:現實世界中的示例和應用程序 PHP行動:現實世界中的示例和應用程序 Apr 14, 2025 am 12:19 AM

PHP在電子商務、內容管理系統和API開發中廣泛應用。 1)電子商務:用於購物車功能和支付處理。 2)內容管理系統:用於動態內容生成和用戶管理。 3)API開發:用於RESTfulAPI開發和API安全性。通過性能優化和最佳實踐,PHP應用的效率和可維護性得以提升。

PHP:網絡開發的關鍵語言 PHP:網絡開發的關鍵語言 Apr 13, 2025 am 12:08 AM

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7

PHP的持久相關性:它還活著嗎? PHP的持久相關性:它還活著嗎? Apr 14, 2025 am 12:12 AM

PHP仍然具有活力,其在現代編程領域中依然佔據重要地位。 1)PHP的簡單易學和強大社區支持使其在Web開發中廣泛應用;2)其靈活性和穩定性使其在處理Web表單、數據庫操作和文件處理等方面表現出色;3)PHP不斷進化和優化,適用於初學者和經驗豐富的開發者。

PHP類型提示如何起作用,包括標量類型,返回類型,聯合類型和無效類型? PHP類型提示如何起作用,包括標量類型,返回類型,聯合類型和無效類型? Apr 17, 2025 am 12:25 AM

PHP類型提示提升代碼質量和可讀性。 1)標量類型提示:自PHP7.0起,允許在函數參數中指定基本數據類型,如int、float等。 2)返回類型提示:確保函數返回值類型的一致性。 3)聯合類型提示:自PHP8.0起,允許在函數參數或返回值中指定多個類型。 4)可空類型提示:允許包含null值,處理可能返回空值的函數。

PHP與Python:了解差異 PHP與Python:了解差異 Apr 11, 2025 am 12:15 AM

PHP和Python各有優勢,選擇應基於項目需求。 1.PHP適合web開發,語法簡單,執行效率高。 2.Python適用於數據科學和機器學習,語法簡潔,庫豐富。

PHP和Python:代碼示例和比較 PHP和Python:代碼示例和比較 Apr 15, 2025 am 12:07 AM

PHP和Python各有優劣,選擇取決於項目需求和個人偏好。 1.PHP適合快速開發和維護大型Web應用。 2.Python在數據科學和機器學習領域佔據主導地位。

See all articles