Jump to content

PHP Framework Poll


Liquid Fire

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.

Link to comment
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

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...
  • 2 weeks later...

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!

Link to comment
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.

Link to comment
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).

Link to comment
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!

Link to comment
Share on other sites

  • 3 weeks later...

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.

Link to comment
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

Link to comment
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.

Link to comment
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).

Link to comment
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.

Link to comment
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

Link to comment
Share on other sites

  • 2 weeks later...

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.

Link to comment
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.

Link to comment
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.

Link to comment
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.

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • 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.