Jump to content

Archived

This topic is now archived and is closed to further replies.

Liquid Fire

PHP Framework Poll

What PHP Framework Do You Use?  

64 members have voted

  1. 1. What PHP Framework Do You Use?

    • CakePHP
      8
    • CodeIgniter
      12
    • PHP on TRAX
      0
    • Prado
      2
    • Seagull Framework
      0
    • Symfony
      2
    • Zend Framework
      18
    • Custom Built Framework
      10
    • Other(Please Specific)
      3
    • Just A Group Of Common Classes
      5
    • All My Code Is Different For Each Project
      4


Recommended Posts

I am trying to build some statistics for used frameworks(php and javascript) so any help would be great.  Also if there is a specific reason you use on over the other, that would be great too.

 

I have tried to get the most popular since there a lot out there so hopefully i got all the big ones named up there.

 

I myself use a custom written framework.  I begin writing the framework to get a better understanding of MVC but after i was done i like it a lot better any anything else and the speed of the code seemed a lot better than some popular frameworks so i decided to take what i learned and rewrite it(which i am almost done with) and will release to the public as open source.

Share this post


Link to post
Share on other sites

just recently started trying to learn Zend Framework although I've heard great things about CodeIgniter and CakePHP...

 

oh and for js.... jQuery! ;)

 

i've been programming PHP for 2 years now but i've only started getting into the OO stuff and design patterns and whatnot relatively recently so i've been staying away from Frameworks to make sure I had a solid foundation before learning something new

Share this post


Link to post
Share on other sites

Started using ZF a few months ago. Reason: great documentation and classes can be used outside the framework itself.

Used Seagull a bit, but that one is a nightmare...

+1 vote for jQuery :)

Share this post


Link to post
Share on other sites

I had never used a framework before, but needed to for work.  I researched CakePHP, Zend, and Codeigniter.  After just trying to get CakePHP and Zend setup for a while, I quickly became frustrated with them.  I shouldn't have to learn new coding conventions, nor spend hours configruing front controllers, directories, and .htaccess files just to even use the framework.  Then I tried the gem that is Codeigniter.  I literally had some code up and running within 10 minutes, and to me, thats what using a framework is all about.  Codeigniter ftw!

Share this post


Link to post
Share on other sites

I can set ZF up in less than 5 minutes...it's not too complicated, and it's MUCH more feature rich than CodeIgniter, and the documentation is amazing.  Plus, it's Zend. :D

Share this post


Link to post
Share on other sites

I"m happy you're content with Zend :)

 

I'd really like to start using it, but I'm still relatively new to PHP as well as frameworks.  While I won't argue who is more feature rich, as Zend clearly wins that battle, it's like using a ballistic missile when you only need a fly swatter.  The documentation on Zend is pretty good, I still had trouble getting it setup.  I found CI"s doc's more helpful in that regard.

Share this post


Link to post
Share on other sites

Yeah, it's like using a ballistic missile when you only need a fly swatter...unless you're trying to destroy a tank. ;)  I've personally never used or even looked at CI.  How good would you consider it?

Share this post


Link to post
Share on other sites

Yeah, it's like using a ballistic missile when you only need a fly swatter...unless you're trying to destroy a tank. ;)  I've personally never used or even looked at CI.  How good would you consider it?

 

CI is a pretty good at what it does.  CI is i think the most extreme oppisite of Zend where Zend has everything including the kitchen sink in it and Codi Ignitor has basically nothing the bear basically to load a view form a controller.  Its model is pretty much none existing and it is leaves you to implement it yourself as there base model nothing like give you accessor functions or save method of anything. 

 

The framework i am building takes the CI approach to be as minimal as possible but as add what i think is 100% useful into the core like a model.ORM system instead of forcing you to integrate something like Propel or Doctrine(and Doctrine from my test is slower than hell with querying the data and retrieving the data).

Share this post


Link to post
Share on other sites

I'm the "rather do it myself" type of person, so I don't mind the model implementations being done the way they are in CI.  The only thing I need my framework to do at this point in time is implement MVC and give my applications a bit of structure that they otherwise might not have.  The libraries and helpers that do come with CI are decently helpful as well!

Share this post


Link to post
Share on other sites

There is a new framework:

 

http://www.yiiframework.com/

 

It's called Yii. It's still in beta version. But, maybe the fastest framework.

 

Not that php 6 is coming out next week but that framework would fail with it because of it dependence on get_magic_quotes_gpc() which may or may not be an easy fix but i would think a newer framework would follow most common standards and since magic quotes are a bad idea(which is why it is finally being removed in php 6) and no one has ever said that magic quotes are great as long as i has been doing PHP programming(2 years) so who knows what other weird stuff that framework does.  I would love to ask the lead developer why he/she decided to support magic quotes.

Share this post


Link to post
Share on other sites

This was my first impression of Yii:

 

/**
 * @var array class map for core Yii classes.
 * NOTE, DO NOT MODIFY THIS ARRAY MANUALLY. IF YOU CHANGE OR ADD SOME CORE CLASSES,
 * PLEASE RUN 'build autoload' COMMAND TO UPDATE THIS ARRAY.
 */
private static $_coreClasses=array(
	'CApcCache' => '/caching/CApcCache.php',
	'CCache' => '/caching/CCache.php',
	'CDbCache' => '/caching/CDbCache.php',
	'CMemCache' => '/caching/CMemCache.php',
	'CCacheDependency' => '/caching/dependencies/CCacheDependency.php',
	'CChainedCacheDependency' => '/caching/dependencies/CChainedCacheDependency.php',
	'CDbCacheDependency' => '/caching/dependencies/CDbCacheDependency.php',
	'CDirectoryCacheDependency' => '/caching/dependencies/CDirectoryCacheDependency.php',
	'CFileCacheDependency' => '/caching/dependencies/CFileCacheDependency.php',
	'CGlobalStateCacheDependency' => '/caching/dependencies/CGlobalStateCacheDependency.php',
	'CAttributeCollection' => '/collections/CAttributeCollection.php',
	'CConfiguration' => '/collections/CConfiguration.php',
	'CList' => '/collections/CList.php',
	'CMap' => '/collections/CMap.php',
	'CQueue' => '/collections/CQueue.php',
	'CStack' => '/collections/CStack.php',
	'CTypedList' => '/collections/CTypedList.php',
	'CConsoleApplication' => '/console/CConsoleApplication.php',
	'CConsoleCommand' => '/console/CConsoleCommand.php',
	'CConsoleCommandRunner' => '/console/CConsoleCommandRunner.php',
	'CHelpCommand' => '/console/CHelpCommand.php',
	'CApplication' => '/core/CApplication.php',
	'CApplicationComponent' => '/core/CApplicationComponent.php',
	'CComponent' => '/core/CComponent.php',
	'CErrorHandler' => '/core/CErrorHandler.php',
	'CException' => '/core/CException.php',
	'CHttpException' => '/core/CHttpException.php',
	'CModel' => '/core/CModel.php',
	'CSecurityManager' => '/core/CSecurityManager.php',
	'CStatePersister' => '/core/CStatePersister.php',
	'CDbLogRoute' => '/core/log/CDbLogRoute.php',
	'CEmailLogRoute' => '/core/log/CEmailLogRoute.php',
	'CFileLogRoute' => '/core/log/CFileLogRoute.php',
	'CLogRoute' => '/core/log/CLogRoute.php',
	'CLogRouter' => '/core/log/CLogRouter.php',
	'CLogger' => '/core/log/CLogger.php',
	'CProfileLogRoute' => '/core/log/CProfileLogRoute.php',
	'CWebLogRoute' => '/core/log/CWebLogRoute.php',
	'CDbCommand' => '/db/CDbCommand.php',
	'CDbConnection' => '/db/CDbConnection.php',
	'CDbDataReader' => '/db/CDbDataReader.php',
	'CDbException' => '/db/CDbException.php',
	'CDbTransaction' => '/db/CDbTransaction.php',
	'CActiveFinder' => '/db/ar/CActiveFinder.php',
	'CActiveRecord' => '/db/ar/CActiveRecord.php',
	'CDbColumnSchema' => '/db/schema/CDbColumnSchema.php',
	'CDbCommandBuilder' => '/db/schema/CDbCommandBuilder.php',
	'CDbCriteria' => '/db/schema/CDbCriteria.php',
	'CDbSchema' => '/db/schema/CDbSchema.php',
	'CDbTableSchema' => '/db/schema/CDbTableSchema.php',
	'CMysqlColumnSchema' => '/db/schema/mysql/CMysqlColumnSchema.php',
	'CMysqlSchema' => '/db/schema/mysql/CMysqlSchema.php',
	'CMysqlTableSchema' => '/db/schema/mysql/CMysqlTableSchema.php',
	'CPgsqlColumnSchema' => '/db/schema/pgsql/CPgsqlColumnSchema.php',
	'CPgsqlSchema' => '/db/schema/pgsql/CPgsqlSchema.php',
	'CPgsqlTableSchema' => '/db/schema/pgsql/CPgsqlTableSchema.php',
	'CSqliteColumnSchema' => '/db/schema/sqlite/CSqliteColumnSchema.php',
	'CSqliteCommandBuilder' => '/db/schema/sqlite/CSqliteCommandBuilder.php',
	'CSqliteSchema' => '/db/schema/sqlite/CSqliteSchema.php',
	'CDateFormatter' => '/i18n/CDateFormatter.php',
	'CDbMessageSource' => '/i18n/CDbMessageSource.php',
	'CGettextMessageSource' => '/i18n/CGettextMessageSource.php',
	'CLocale' => '/i18n/CLocale.php',
	'CMessageSource' => '/i18n/CMessageSource.php',
	'CNumberFormatter' => '/i18n/CNumberFormatter.php',
	'CPhpMessageSource' => '/i18n/CPhpMessageSource.php',
	'CGettextFile' => '/i18n/gettext/CGettextFile.php',
	'CGettextMoFile' => '/i18n/gettext/CGettextMoFile.php',
	'CGettextPoFile' => '/i18n/gettext/CGettextPoFile.php',
	'CDateParser' => '/utils/CDateParser.php',
	'CFileHelper' => '/utils/CFileHelper.php',
	'CMarkdownParser' => '/utils/CMarkdownParser.php',
	'CTimestamp' => '/utils/CTimestamp.php',
	'CVarDumper' => '/utils/CVarDumper.php',
	'CCaptchaValidator' => '/validators/CCaptchaValidator.php',
	'CCompareValidator' => '/validators/CCompareValidator.php',
	'CEmailValidator' => '/validators/CEmailValidator.php',
	'CFilterValidator' => '/validators/CFilterValidator.php',
	'CInlineValidator' => '/validators/CInlineValidator.php',
	'CNumberValidator' => '/validators/CNumberValidator.php',
	'CRangeValidator' => '/validators/CRangeValidator.php',
	'CRegularExpressionValidator' => '/validators/CRegularExpressionValidator.php',
	'CRequiredValidator' => '/validators/CRequiredValidator.php',
	'CStringValidator' => '/validators/CStringValidator.php',
	'CTypeValidator' => '/validators/CTypeValidator.php',
	'CUniqueValidator' => '/validators/CUniqueValidator.php',
	'CUrlValidator' => '/validators/CUrlValidator.php',
	'CValidator' => '/validators/CValidator.php',
	'CAssetManager' => '/web/CAssetManager.php',
	'CBaseController' => '/web/CBaseController.php',
	'CCacheHttpSession' => '/web/CCacheHttpSession.php',
	'CClientScript' => '/web/CClientScript.php',
	'CController' => '/web/CController.php',
	'CDbHttpSession' => '/web/CDbHttpSession.php',
	'CExtController' => '/web/CExtController.php',
	'CFormModel' => '/web/CFormModel.php',
	'CHttpCookie' => '/web/CHttpCookie.php',
	'CHttpRequest' => '/web/CHttpRequest.php',
	'CHttpSession' => '/web/CHttpSession.php',
	'COutputEvent' => '/web/COutputEvent.php',
	'CPagination' => '/web/CPagination.php',
	'CTheme' => '/web/CTheme.php',
	'CThemeManager' => '/web/CThemeManager.php',
	'CUrlManager' => '/web/CUrlManager.php',
	'CWebApplication' => '/web/CWebApplication.php',
	'CWebService' => '/web/CWebService.php',
	'CWsdlGenerator' => '/web/CWsdlGenerator.php',
	'CAction' => '/web/actions/CAction.php',
	'CCaptchaAction' => '/web/actions/CCaptchaAction.php',
	'CInlineAction' => '/web/actions/CInlineAction.php',
	'CViewAction' => '/web/actions/CViewAction.php',
	'CWebServiceAction' => '/web/actions/CWebServiceAction.php',
	'CAuthAssignment' => '/web/auth/CAuthAssignment.php',
	'CAuthItem' => '/web/auth/CAuthItem.php',
	'CAuthManager' => '/web/auth/CAuthManager.php',
	'CBaseUserIdentity' => '/web/auth/CBaseUserIdentity.php',
	'CDbAuthManager' => '/web/auth/CDbAuthManager.php',
	'CPhpAuthManager' => '/web/auth/CPhpAuthManager.php',
	'CUserIdentity' => '/web/auth/CUserIdentity.php',
	'CWebUser' => '/web/auth/CWebUser.php',
	'CAccessControlFilter' => '/web/filters/CAccessControlFilter.php',
	'CFilter' => '/web/filters/CFilter.php',
	'CFilterChain' => '/web/filters/CFilterChain.php',
	'CInlineFilter' => '/web/filters/CInlineFilter.php',
	'CHtml' => '/web/helpers/CHtml.php',
	'CJSON' => '/web/helpers/CJSON.php',
	'CJavaScript' => '/web/helpers/CJavaScript.php',
	'CPradoViewRenderer' => '/web/renderers/CPradoViewRenderer.php',
	'CViewRenderer' => '/web/renderers/CViewRenderer.php',
	'CAutoComplete' => '/web/widgets/CAutoComplete.php',
	'CCaptcha' => '/web/widgets/CCaptcha.php',
	'CClipWidget' => '/web/widgets/CClipWidget.php',
	'CContentDecorator' => '/web/widgets/CContentDecorator.php',
	'CFilterWidget' => '/web/widgets/CFilterWidget.php',
	'CFlexWidget' => '/web/widgets/CFlexWidget.php',
	'CHtmlPurifier' => '/web/widgets/CHtmlPurifier.php',
	'CInputWidget' => '/web/widgets/CInputWidget.php',
	'CMarkdown' => '/web/widgets/CMarkdown.php',
	'CMaskedTextField' => '/web/widgets/CMaskedTextField.php',
	'CMultiFileUpload' => '/web/widgets/CMultiFileUpload.php',
	'COutputCache' => '/web/widgets/COutputCache.php',
	'COutputProcessor' => '/web/widgets/COutputProcessor.php',
	'CTextHighlighter' => '/web/widgets/CTextHighlighter.php',
	'CTreeView' => '/web/widgets/CTreeView.php',
	'CWidget' => '/web/widgets/CWidget.php',
	'CBasePager' => '/web/widgets/pagers/CBasePager.php',
	'CLinkPager' => '/web/widgets/pagers/CLinkPager.php',
	'CListPager' => '/web/widgets/pagers/CListPager.php',
);

 

lol

Share this post


Link to post
Share on other sites

This was my first impression of Yii:

 

/**
 * @var array class map for core Yii classes.
 * NOTE, DO NOT MODIFY THIS ARRAY MANUALLY. IF YOU CHANGE OR ADD SOME CORE CLASSES,
 * PLEASE RUN 'build autoload' COMMAND TO UPDATE THIS ARRAY.
 */
private static $_coreClasses=array(
	'CApcCache' => '/caching/CApcCache.php',
	'CCache' => '/caching/CCache.php',
	'CDbCache' => '/caching/CDbCache.php',
	'CMemCache' => '/caching/CMemCache.php',
	'CCacheDependency' => '/caching/dependencies/CCacheDependency.php',
	'CChainedCacheDependency' => '/caching/dependencies/CChainedCacheDependency.php',
	'CDbCacheDependency' => '/caching/dependencies/CDbCacheDependency.php',
	'CDirectoryCacheDependency' => '/caching/dependencies/CDirectoryCacheDependency.php',
	'CFileCacheDependency' => '/caching/dependencies/CFileCacheDependency.php',
	'CGlobalStateCacheDependency' => '/caching/dependencies/CGlobalStateCacheDependency.php',
	'CAttributeCollection' => '/collections/CAttributeCollection.php',
	'CConfiguration' => '/collections/CConfiguration.php',
	'CList' => '/collections/CList.php',
	'CMap' => '/collections/CMap.php',
	'CQueue' => '/collections/CQueue.php',
	'CStack' => '/collections/CStack.php',
	'CTypedList' => '/collections/CTypedList.php',
	'CConsoleApplication' => '/console/CConsoleApplication.php',
	'CConsoleCommand' => '/console/CConsoleCommand.php',
	'CConsoleCommandRunner' => '/console/CConsoleCommandRunner.php',
	'CHelpCommand' => '/console/CHelpCommand.php',
	'CApplication' => '/core/CApplication.php',
	'CApplicationComponent' => '/core/CApplicationComponent.php',
	'CComponent' => '/core/CComponent.php',
	'CErrorHandler' => '/core/CErrorHandler.php',
	'CException' => '/core/CException.php',
	'CHttpException' => '/core/CHttpException.php',
	'CModel' => '/core/CModel.php',
	'CSecurityManager' => '/core/CSecurityManager.php',
	'CStatePersister' => '/core/CStatePersister.php',
	'CDbLogRoute' => '/core/log/CDbLogRoute.php',
	'CEmailLogRoute' => '/core/log/CEmailLogRoute.php',
	'CFileLogRoute' => '/core/log/CFileLogRoute.php',
	'CLogRoute' => '/core/log/CLogRoute.php',
	'CLogRouter' => '/core/log/CLogRouter.php',
	'CLogger' => '/core/log/CLogger.php',
	'CProfileLogRoute' => '/core/log/CProfileLogRoute.php',
	'CWebLogRoute' => '/core/log/CWebLogRoute.php',
	'CDbCommand' => '/db/CDbCommand.php',
	'CDbConnection' => '/db/CDbConnection.php',
	'CDbDataReader' => '/db/CDbDataReader.php',
	'CDbException' => '/db/CDbException.php',
	'CDbTransaction' => '/db/CDbTransaction.php',
	'CActiveFinder' => '/db/ar/CActiveFinder.php',
	'CActiveRecord' => '/db/ar/CActiveRecord.php',
	'CDbColumnSchema' => '/db/schema/CDbColumnSchema.php',
	'CDbCommandBuilder' => '/db/schema/CDbCommandBuilder.php',
	'CDbCriteria' => '/db/schema/CDbCriteria.php',
	'CDbSchema' => '/db/schema/CDbSchema.php',
	'CDbTableSchema' => '/db/schema/CDbTableSchema.php',
	'CMysqlColumnSchema' => '/db/schema/mysql/CMysqlColumnSchema.php',
	'CMysqlSchema' => '/db/schema/mysql/CMysqlSchema.php',
	'CMysqlTableSchema' => '/db/schema/mysql/CMysqlTableSchema.php',
	'CPgsqlColumnSchema' => '/db/schema/pgsql/CPgsqlColumnSchema.php',
	'CPgsqlSchema' => '/db/schema/pgsql/CPgsqlSchema.php',
	'CPgsqlTableSchema' => '/db/schema/pgsql/CPgsqlTableSchema.php',
	'CSqliteColumnSchema' => '/db/schema/sqlite/CSqliteColumnSchema.php',
	'CSqliteCommandBuilder' => '/db/schema/sqlite/CSqliteCommandBuilder.php',
	'CSqliteSchema' => '/db/schema/sqlite/CSqliteSchema.php',
	'CDateFormatter' => '/i18n/CDateFormatter.php',
	'CDbMessageSource' => '/i18n/CDbMessageSource.php',
	'CGettextMessageSource' => '/i18n/CGettextMessageSource.php',
	'CLocale' => '/i18n/CLocale.php',
	'CMessageSource' => '/i18n/CMessageSource.php',
	'CNumberFormatter' => '/i18n/CNumberFormatter.php',
	'CPhpMessageSource' => '/i18n/CPhpMessageSource.php',
	'CGettextFile' => '/i18n/gettext/CGettextFile.php',
	'CGettextMoFile' => '/i18n/gettext/CGettextMoFile.php',
	'CGettextPoFile' => '/i18n/gettext/CGettextPoFile.php',
	'CDateParser' => '/utils/CDateParser.php',
	'CFileHelper' => '/utils/CFileHelper.php',
	'CMarkdownParser' => '/utils/CMarkdownParser.php',
	'CTimestamp' => '/utils/CTimestamp.php',
	'CVarDumper' => '/utils/CVarDumper.php',
	'CCaptchaValidator' => '/validators/CCaptchaValidator.php',
	'CCompareValidator' => '/validators/CCompareValidator.php',
	'CEmailValidator' => '/validators/CEmailValidator.php',
	'CFilterValidator' => '/validators/CFilterValidator.php',
	'CInlineValidator' => '/validators/CInlineValidator.php',
	'CNumberValidator' => '/validators/CNumberValidator.php',
	'CRangeValidator' => '/validators/CRangeValidator.php',
	'CRegularExpressionValidator' => '/validators/CRegularExpressionValidator.php',
	'CRequiredValidator' => '/validators/CRequiredValidator.php',
	'CStringValidator' => '/validators/CStringValidator.php',
	'CTypeValidator' => '/validators/CTypeValidator.php',
	'CUniqueValidator' => '/validators/CUniqueValidator.php',
	'CUrlValidator' => '/validators/CUrlValidator.php',
	'CValidator' => '/validators/CValidator.php',
	'CAssetManager' => '/web/CAssetManager.php',
	'CBaseController' => '/web/CBaseController.php',
	'CCacheHttpSession' => '/web/CCacheHttpSession.php',
	'CClientScript' => '/web/CClientScript.php',
	'CController' => '/web/CController.php',
	'CDbHttpSession' => '/web/CDbHttpSession.php',
	'CExtController' => '/web/CExtController.php',
	'CFormModel' => '/web/CFormModel.php',
	'CHttpCookie' => '/web/CHttpCookie.php',
	'CHttpRequest' => '/web/CHttpRequest.php',
	'CHttpSession' => '/web/CHttpSession.php',
	'COutputEvent' => '/web/COutputEvent.php',
	'CPagination' => '/web/CPagination.php',
	'CTheme' => '/web/CTheme.php',
	'CThemeManager' => '/web/CThemeManager.php',
	'CUrlManager' => '/web/CUrlManager.php',
	'CWebApplication' => '/web/CWebApplication.php',
	'CWebService' => '/web/CWebService.php',
	'CWsdlGenerator' => '/web/CWsdlGenerator.php',
	'CAction' => '/web/actions/CAction.php',
	'CCaptchaAction' => '/web/actions/CCaptchaAction.php',
	'CInlineAction' => '/web/actions/CInlineAction.php',
	'CViewAction' => '/web/actions/CViewAction.php',
	'CWebServiceAction' => '/web/actions/CWebServiceAction.php',
	'CAuthAssignment' => '/web/auth/CAuthAssignment.php',
	'CAuthItem' => '/web/auth/CAuthItem.php',
	'CAuthManager' => '/web/auth/CAuthManager.php',
	'CBaseUserIdentity' => '/web/auth/CBaseUserIdentity.php',
	'CDbAuthManager' => '/web/auth/CDbAuthManager.php',
	'CPhpAuthManager' => '/web/auth/CPhpAuthManager.php',
	'CUserIdentity' => '/web/auth/CUserIdentity.php',
	'CWebUser' => '/web/auth/CWebUser.php',
	'CAccessControlFilter' => '/web/filters/CAccessControlFilter.php',
	'CFilter' => '/web/filters/CFilter.php',
	'CFilterChain' => '/web/filters/CFilterChain.php',
	'CInlineFilter' => '/web/filters/CInlineFilter.php',
	'CHtml' => '/web/helpers/CHtml.php',
	'CJSON' => '/web/helpers/CJSON.php',
	'CJavaScript' => '/web/helpers/CJavaScript.php',
	'CPradoViewRenderer' => '/web/renderers/CPradoViewRenderer.php',
	'CViewRenderer' => '/web/renderers/CViewRenderer.php',
	'CAutoComplete' => '/web/widgets/CAutoComplete.php',
	'CCaptcha' => '/web/widgets/CCaptcha.php',
	'CClipWidget' => '/web/widgets/CClipWidget.php',
	'CContentDecorator' => '/web/widgets/CContentDecorator.php',
	'CFilterWidget' => '/web/widgets/CFilterWidget.php',
	'CFlexWidget' => '/web/widgets/CFlexWidget.php',
	'CHtmlPurifier' => '/web/widgets/CHtmlPurifier.php',
	'CInputWidget' => '/web/widgets/CInputWidget.php',
	'CMarkdown' => '/web/widgets/CMarkdown.php',
	'CMaskedTextField' => '/web/widgets/CMaskedTextField.php',
	'CMultiFileUpload' => '/web/widgets/CMultiFileUpload.php',
	'COutputCache' => '/web/widgets/COutputCache.php',
	'COutputProcessor' => '/web/widgets/COutputProcessor.php',
	'CTextHighlighter' => '/web/widgets/CTextHighlighter.php',
	'CTreeView' => '/web/widgets/CTreeView.php',
	'CWidget' => '/web/widgets/CWidget.php',
	'CBasePager' => '/web/widgets/pagers/CBasePager.php',
	'CLinkPager' => '/web/widgets/pagers/CLinkPager.php',
	'CListPager' => '/web/widgets/pagers/CListPager.php',
);

 

lol

 

Well i do pretty much the same thing except i use a xml file to store file location for my autoload.

Share this post


Link to post
Share on other sites

Hrmmm.....

 

Yeah, I guess it has to be like that unless the names are super long....

 

 

Like Web_Widgets_Pager_CListPager.  lol

Share this post


Link to post
Share on other sites

Hrmmm.....

 

Yeah, I guess it has to be like that unless the names are super long....

 

 

Like Web_Widgets_Pager_CListPager.  lol

 

Yea, that is actually why i did it that way, I don't want class names like Zend has and no other option has found its way to me.

Share this post


Link to post
Share on other sites

There is a new framework:

 

http://www.yiiframework.com/

 

It's called Yii. It's still in beta version. But, maybe the fastest framework.

 

Not that php 6 is coming out next week but that framework would fail with it because of it dependence on get_magic_quotes_gpc() which may or may not be an easy fix but i would think a newer framework would follow most common standards and since magic quotes are a bad idea(which is why it is finally being removed in php 6) and no one has ever said that magic quotes are great as long as i has been doing PHP programming(2 years) so who knows what other weird stuff that framework does.  I would love to ask the lead developer why he/she decided to support magic quotes.

 

Ow, it looks like I can't rely on Yii at this time. Honestly, I'm just impressed by its speed. Right now, i'm still using (and learning) Prado. But I'd love to try another framework which can run faster (maybe Code Igniter).

Share this post


Link to post
Share on other sites

Its speed is nothing mind blowing to me, the hello world take around 2ms with xdebug and my own framework take about that long.  I have not used its model and while it may look fast, it provide no functionality for retrieving/saving data and the only functionality i see is validation and error checking(not sure the difference).

 

This really seems like nothing special or anything.  The model portion may be faster but does nothing special and has very limited functionality to save coding time.  My framework too could say that it is nothing special as i am not adding a ton of new things that no other MVC and/or ORM framework has however my goal has been cleaner and faster code as from earlier testing, my framework(with a custom ORM system) is 2 times faster for loading the same amount of data from a model than the doctrine ORM(and Doctrine does not even do MVC stuff like parse url, load controller, load view.

Share this post


Link to post
Share on other sites

You can manipulate your __autoload function to do anything you should'nt need any kind of external loaded file to tell it where the paths are for files, just make sure you set your include paths, there should be no problems at all

 

Lotta Regex and planning :)

 

That loong array for Yii main core classes is a ridiculous and to me doesn't use PHP to its full extent...there being lazy

Share this post


Link to post
Share on other sites

There is a new framework:

 

http://www.yiiframework.com/

 

It's called Yii. It's still in beta version. But, maybe the fastest framework.

 

Not that php 6 is coming out next week but that framework would fail with it because of it dependence on get_magic_quotes_gpc() which may or may not be an easy fix but i would think a newer framework would follow most common standards and since magic quotes are a bad idea(which is why it is finally being removed in php 6) and no one has ever said that magic quotes are great as long as i has been doing PHP programming(2 years) so who knows what other weird stuff that framework does.  I would love to ask the lead developer why he/she decided to support magic quotes.

 

From where did you learn that Yii depends on get_magic_quotes_gpc()?

On the contrary, Yii tries to eliminate the effect of get_magic_quotes_gpc() if magic quotes is enabled.

Share this post


Link to post
Share on other sites

Its speed is nothing mind blowing to me, the hello world take around 2ms with xdebug and my own framework take about that long.  I have not used its model and while it may look fast, it provide no functionality for retrieving/saving data and the only functionality i see is validation and error checking(not sure the difference).

 

This really seems like nothing special or anything.  The model portion may be faster but does nothing special and has very limited functionality to save coding time.  My framework too could say that it is nothing special as i am not adding a ton of new things that no other MVC and/or ORM framework has however my goal has been cleaner and faster code as from earlier testing, my framework(with a custom ORM system) is 2 times faster for loading the same amount of data from a model than the doctrine ORM(and Doctrine does not even do MVC stuff like parse url, load controller, load view.

 

Yii has complete implementation of Active Record. I guess what you saw is only its base class CModel. Please take a look at CActiveRecord and CFormModel.

Share this post


Link to post
Share on other sites

You can manipulate your __autoload function to do anything you should'nt need any kind of external loaded file to tell it where the paths are for files, just make sure you set your include paths, there should be no problems at all

 

Lotta Regex and planning :)

 

That loong array for Yii main core classes is a ridiculous and to me doesn't use PHP to its full extent...there being lazy

 

Relying on include path means extra time in including files, which is something most frameworks are trying to avoid. It is perfectly fine you use include path in personal projects, though.

Share this post


Link to post
Share on other sites

There is a new framework:

 

http://www.yiiframework.com/

 

It's called Yii. It's still in beta version. But, maybe the fastest framework.

 

Not that php 6 is coming out next week but that framework would fail with it because of it dependence on get_magic_quotes_gpc() which may or may not be an easy fix but i would think a newer framework would follow most common standards and since magic quotes are a bad idea(which is why it is finally being removed in php 6) and no one has ever said that magic quotes are great as long as i has been doing PHP programming(2 years) so who knows what other weird stuff that framework does.  I would love to ask the lead developer why he/she decided to support magic quotes.

 

From where did you learn that Yii depends on get_magic_quotes_gpc()?

On the contrary, Yii tries to eliminate the effect of get_magic_quotes_gpc() if magic quotes is enabled.

 

Now PHP 6 is still not coming out anytime soon but in php 6 get_magic_quotes_gpc() is being removed(along with the other things tied to magic quotes and it is in a whole being removed) so when i run yii under the last php 6 i get the following fatal error:

 

Fatal error: Call to undefined function get_magic_quotes_gpc() in C:\wamp\www\yii\framework\web\CHttpRequest.php on line 63

 

now my opinion is that any new framework should assume that magic quotes are turned off because you have to be an idiot to still be using them.  I hope this is something that can easily be fixed when it needs to and not something that is spidered in the whole system.

Share this post


Link to post
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.