Generated by All in One SEO v5.0.0.1, this is an llms.txt file, used by LLMs to index the site. # Welcome to SymfonyLab Transforming Ideas into Exceptional Software Solutions ## Sitemaps - [XML Sitemap](https://www.symfonylab.com/sitemap.xml): Contains all public & indexable URLs for this website. ## Posts - [Blog](https://www.symfonylab.com/blog/) - [Building Success Together: SymfonyLab’s Collaboration with Kredance](https://www.symfonylab.com/building-success-together-symfonylabs-collaboration-with-kredance/) - At SymfonyLab, we always strive to push the boundaries of what’s possible with software solutions. A key part of our success has been finding the right partners to support our development needs. That's why working with Kredance, led by Myroslav Vozniak, has been such a great experience for us. Over the course of our partnership, - [The singleton pattern in Symfony PHP Framework](https://www.symfonylab.com/the-singleton-pattern-in-symfony-php-framework/) - The singleton pattern in Symfony is useful when we need to make sure we only have a single instance of a class for the entire request lifecycle in a web application. - [Companies That Support SymfonyLab](https://www.symfonylab.com/companies-that-support-symfonylab/) - Hi everyone! We’d like to thank our site sponsors between July 1, 2010 – August 30, 2010 and provide some informartion about what they do. You can support SymfonyLab by checking them out and seeing if they have anything that you can take advantage of :) ServeGrove ServeGrove is a web hosting provider with fast - [Companies That Support SymfonyLab in October](https://www.symfonylab.com/companies-that-support-symfonylab-in-october/) - Hi everyone! We’d like to thank our site sponsors between October 1, 2010 – October 31, 2010 and provide some informartion about what they do. You can support SymfonyLab by checking them out and seeing if they have anything that you can take advantage of :) ServerGrove ServerGrove is a web hosting provider with fast - [Wish you Wonderful Christmas and A Happy New Year](https://www.symfonylab.com/wish-you-wonderful-christmas-and-a-happy-new-year/) - Hope you and your family have Wonderful Christmas and A Happy New Year! We also hope 2011 will be a great year for symfony (yeah and for symfony2!! especially). More plugins and more tools to improve symfony projects development. - [Companies That Support SymfonyLab in September](https://www.symfonylab.com/companies-that-support-symfonylab-in-september/) - Hi everyone! We’d like to thank our site sponsors between August 1, 2010 – August 30, 2010 and provide some informartion about what they do. You can support SymfonyLab by checking them out and seeing if they have anything that you can take advantage of :) ServerGrove ServerGrove is a web hosting provider with fast - [Companies That Support SymfonyLab in November](https://www.symfonylab.com/companies-that-support-symfonylab-in-november/) - Hi everyone! We’d like to thank our site sponsors between November 1, 2010 – November 31, 2010 and provide some informartion about what they do. You can support SymfonyLab by checking them out and seeing if they have anything that you can take advantage of :) ServerGrove ServerGrove is a web hosting provider with fast - [And again about gearman](https://www.symfonylab.com/and-again-about-gearman/) - Here are some cool Gearman slideshows both for beginners and advanced usage I've found today. Specifically good one is about usage Gearman with MySQL server. High gear PHP with Gearman Gearman for MySQL Gearman For Beginners - [Services in Symfony](https://www.symfonylab.com/services-in-symfony/) - What is service? In fact, there is a rather simple idea behind this term: a service is any object that does some work. For example, it sends messages, saves data to a database, parses RSS, etc. How to use the services? Just inside the controller, add an extra argument to the method and give it - [One more time about symfony filters](https://www.symfonylab.com/one-more-time-about-symfony-filters/) - Symfony filters is powerful mechanism to perform system wide authentications, database actions, etc. One of the ways you may want to use it is system wide preExecute action. The logic of preExecute requires it to be added per module but often you may need to perform same bunch of actions for all modules. So why - [Symfony and serialization](https://www.symfonylab.com/symfony-and-serialization/) - Interesting problem with data unserialization in symfony. So if you have stored serialized value in database and want to unserialize it (lets say it's $obj->getText() value), you need to make sure you use special chars decode like here: $value = htmlspecialchars_decode($obj->getText()); $data = unserialize($value); Without actual htmlspecialchars_decode command PHP compiler will report about offset error. - [Fatal error: Zend_Search_Lucene_Proxy](https://www.symfonylab.com/fatal-error-zend_search_lucene_proxy/) - We've recently faced the following error while using Lucene indexes with Symfony: Fatal error: Ignoring exception from Zend_Search_Lucene_Proxy::__destruct() while an exception is already active Sounded scary and some quick googling showed that the problem is serious: http://framework.zend.com/issues/browse/ZF-1471 http://stackoverflow.com/questions/797570/zend-search-lucene-crashes-during-indexing but eventually it turned out that it was enough to chmod 755 indexes folders to allow Zend - [Using DataTables with Symfony (Doctrine version)](https://www.symfonylab.com/using-datatables-with-symfony-doctrine-version/) - Recently we've discovered great jQuery plugin DataTables. Except it looks great it has also some wonderful AJAX features which allows to apply it to really huge data lists. Here is the quick way to tie it with your data source using Doctrine ORM (please refer to this post in case you need to use it - [Symfony Live 2011 Paris](https://www.symfonylab.com/symfony-live-2011-paris/) - I can't believe that I missed these slides from Symfony Live 2011 Paris. It's real treasure :) There are whole bunch of great ones but first of all I was happy to look through the next ones: Speedy App: Frontend Performance Considerations by Pierre Spring RESTful avec symfony 1 et Symfony2 by Xavier Lacot Theres - [Setup virtual host in Apache for Symfony project](https://www.symfonylab.com/setup-virtual-host-in-apache-for-symfony-project/) - [Symfony and Varnish](https://www.symfonylab.com/symfony-and-varnish/) - Hi everyone, Just a quick head up with bunch of links about Varnish integration for symfony. I'm sure you have heard of Varnish reverse proxy server Varnish is a web accelerator written with performance and flexibility in mind. It's modern architecture gives it a significantly better performance than many of it's competing products. Varnish store - [sfEmailPlugin](https://www.symfonylab.com/sfemailplugin-2/) - Hi symfonians, This is quick post to inform you that today Ton Sharp gave new life to one of our plugins sfEmailPlugin: http://www.symfony-project.org/plugins/sfEmailPlugin/1_1_2 So he basically updated it and made compatible with all 1.x symfony versions. One of the most important updates he did is now the plugin allows to replace transport protocol in symfony - [Overview of Symfony Live San Francisco (day 1)](https://www.symfonylab.com/overview-of-symfony-live-san-francisco-day-1/) - The Day 1 of Symfony Live had 5 presentations: The Path to Symfony in the USA by Dustin Whittle Clean code by Bulat Shakirzyanov Apostrophe by tompunk Doctrine in the Real World by Jonathan Wage phpBB4: Building end-user applications with Symfony2 by Nils Adermann Seems like these presentations were mostly pretty "general" without providing much - [Using CKeditor as AJAX](https://www.symfonylab.com/using-ckeditor-as-ajax/) - We wrote about WYSIWYG editors in Symfony a long time ago. Now we would like to mention about using CKEditor with symfony and specifically its usage in AJAX mode. So the quickest way to start with CKEditor is to install sfCkPlugin The installation is easy and its described in readme file. It's worth to mention - [File uploader. Reload](https://www.symfonylab.com/file-uploader-reload/) - We recently wrote about SWF upload plugin. And this is really great plugin (as well as SWFupload library which is behind the plugin). But as it turned out there are plenty of situations when alternative solution is needed (not necessary better), e.g. for users # who can't use Flash # need drag-and-drop file select Also - [Using of sfWidgetFormInputSWFUploadPlugin](https://www.symfonylab.com/using-of-sfwidgetforminputswfuploadplugin/) - Files uploading is the task which appears basically in every project. And symfony provides good technique to handle files uploading. But sometimes we are looking for the solution which would improve uploading usability and provide the way to track uploading progress. There are a few popular libraries based on Flash technology: http://code.google.com/p/swfupload/ http://www.uploadify.com/ http://developer.yahoo.com/yui/uploader/ Each - [A note on Lucene Search](https://www.symfonylab.com/a-note-on-lucene-search/) - Zend Lucene Search seems to be pretty good alternative to Sphinx. The biggest advantage is the fact that you can add/remove indexes on the fly and add different DB fields into index easily. One thing which is not really mentioned in their manual - when you use wildcard for terms search you are limited to - [Symfony Best Practices](https://www.symfonylab.com/symfony-best-practices/) - It's 2 years old presentation from Nicolas Perriault but still good to watch for any symfony developer. Btw, I've learned from it good lesson about writing own functional browser/tester (so contains login method): - [postDelete in doctrine](https://www.symfonylab.com/postdelete-in-doctrine/) - This post is not just about Doctrine's postDelete method. So as you know Doctrine supports a few useful methods which extends insert / delete functionality (postDelete, preDelete, postInsert, preInsert, etc). The key thing - there is documented the way to use them inside Doctrine listeners (see e.g. here http://www.symfony-project.org/more-with-symfony/1_4/en/08-Advanced-Doctrine-Usage) but it's not obvious how to - [Custom values in sfWidgetFormDoctrineChoice](https://www.symfonylab.com/custom-values-in-sfwidgetformdoctrinechoice/) - Lets consider sfWidgetFormDoctrineChoice form select object with multiple elements: $this->setWidgets(array( 'books' => new sfWidgetFormDoctrineChoice(array('model' => 'Book', 'expanded' => true, 'multiple' => true)), )); So it will obviously take all records from book table and show it as multiple list of checkboxes. But what if you don't need to show all values for selection (e.g. you - [symfony referer redirect](https://www.symfonylab.com/symfony-referer-redirect/) - Quick way to redirect back to referer page in symfony 1.3/1.4: $this->redirect($request->getReferer()); Its pretty useful when you send load of parameters to some action (e.g. delete) and then need to return back to sender page (so instead of using generateUrl() method with all return parameters it makes sense to use getReferer() method). - [Form entries positioning](https://www.symfonylab.com/form-entries-positioning/) - Quick note on ordering form elements. It's very useful specifically when you have complex form which consists of Doctrine table elements and some elements which is not included in Doctrine table (for instance dynamically generated form fields). By default symfony form framework uses the order you used in useFields method. So if you want to - [A note on symfony caching](https://www.symfonylab.com/a-note-on-symfony-caching/) - Symfony has some great built-in caching mechanisms enabled by default. But obviously if you have data which is rarely changing you would want to cache it additionally. Lets consider situation when you need to cache some array (which may be itself selection from DB), so easiest way to cache it in symfony is to use - [Doctrine Migrations for beginners](https://www.symfonylab.com/doctrine-migrations-for-beginners/) - If you are starting new symfony/doctrine project its easy to dive into doctrine migrations (updating your production databases through a nice programmatic interface), here is some quick start manual: http://particul.es/blog/index.php?post/Doctrine-generate-migrations-or-how-to-upgrade-your-database-in-production And if you already have a project and want to bring migrations there look these great slides: The Art of Doctrine Migrations Using Doctrine Migrations - [sfDoctrineRestGeneratorPlugin](https://www.symfonylab.com/sfdoctrinerestgeneratorplugin/) - We've been looking for good enough API solution using symfony and seems like sfDoctrineRestGenerator plugin is good enough one. It has full HTTP support (GET, POST, PUT, DELETE) and some key features are ability to limit the number of results, with or without pagination and possibility to embed extra fields. There is no built-in system - [Advanced symfony Techniques](https://www.symfonylab.com/advanced-symfony-techniques/) - Presentation by Kris Wallsmith showed on Symfony Day 2010. Contains interesting approaches to handle routes, authentication, security: - [php/scaling readme mix](https://www.symfonylab.com/phpscaling-readme-mix/) - Thought worth to share some of posts/slides I've read today. They are basically about different things but too interesting to miss it. So first one is phpMyAdminMySQL alternatives: MonoQL SQLBuddy Adminer PHPMiniAdmin original post is here http://blogs.sitepoint.com/2010/10/27/phpmyadmin-alternatives/ Another one is great slideshow about using Solr search engine with Hadoop. I'm definitely hanging around Hadoop technology - [History of frameworks](https://www.symfonylab.com/history-of-frameworks/) - Just found funny illustrated history of frameworks: Symfony2 is not there yet :) - [Doctrine and Zend Framework](https://www.symfonylab.com/doctrine-and-zend-framework/) - Interesting video from ZendCasts with details about using Doctrine and Zend Framework (default Zend ORM is quite poor actually it does not even ORM so using Doctrine with Zend is great choice but it requires some efforts to make it working together). By the way, there are more Doctrine videos on ZendCasts site. Deep Integration - [Dynamic Propel/Doctrine connection](https://www.symfonylab.com/dynamic-propeldoctrine-connection/) - Sometimes you may need to change access to database dynamically inside your project (may be very usefull for sharding approaches). Also wondering what if disable DB access at all from config/settings.yml: use_database: false and create connection only where it's needed. I'm sure this would speed up performance fantastically. Although almost every page wants to get - [Interview with Frantisek Troster and Ludek Vodicka (Inventic)](https://www.symfonylab.com/interview-with-frantisek-troster-and-ludek-vodicka-inventic/) - Our today guests are Frantisek Troster and Ludek Vodicka (owners of software company Inventic which developed ORM Designer) 1. About company (background, location, activities, when started, etc) Inventic is a Czech company which we have founded in June 2006. Before founding Inventic me and Ludek have been working together on some projects where his task - [Symfony CMF](https://www.symfonylab.com/symfony-cmf/) - Read today information about symfony CMF project (kinda CMS framework built on top of symfony2 and doctrine2): http://cmf.symfony-project.org/ as they claim: The Symfony CMF project makes it easier for developers to add CMS functionality to applications built with the Symfony2 PHP framework. Key development principles for the provided set of bundles are scalability, usability, documentation - [More Videos From Spanish Symfony Conference 2010](https://www.symfonylab.com/more-videos-from-spanish-symfony-conference-2010/) - Introducci?n a symfony ORM Doctrine Symfony admin generator - [High Performance Mobile Symfony ](https://www.symfonylab.com/high-performance-mobile-symfony/) - Am reading this slideshow about high performance mobile sites which provides great basic introduction into mobile development (eg I've never heard of "inline images" before watching this): and trying to figure out the right strategy for building mobile site using symfony. So far I was able to find only these articles/plugins which can be helpful - [Symfony Visualization](https://www.symfonylab.com/symfony-visualization/) - Just found on YouTube a couple of interesting videos built using gource (software version control visualization) for Symfony 1.4 repository: and Doctrine: The guys added some fun techno music and hey it looks like birth of universe?? And yeah that's where you can feel the power of community for sure :) Btw, if you liked - [Is there life out there (or what is your ideal ORM for PHP)?](https://www.symfonylab.com/is-there-life-out-there-or-what-is-your-ideal-orm-for-php/) - Well I must say that in first time I have heard about ORM when started to use symfony more than 5 years ago (until that time I only used direct db queries). So I realized that there are 2 most powerful PHP ORM's: Doctrine and Propel. And they are both moving forward pretty well and - [Symfony Chat](https://www.symfonylab.com/symfony-chat/) - We've thought that CHAT could be a good place for symfonians to share some ideas and discuss practically anything about symfony. So if you are ready to talk about symfony online with people from symfony world (developers, employers, project managers), please join our symfony chat (click chat icon at bottom right corner) and start talking - [Spanish Symfony2](https://www.symfonylab.com/spanish-symfony2/) - Just decided to see if any new videos on Vimeo about symfony2 and found that user decharlas uploaded a few interesting videos but all of them in Spanish. Unfortunately, I don't understand Spanish but as it turned out while I watch it - everything is pretty clear (thanks to code sources shown on screen during - [Symfony Rocks?](https://www.symfonylab.com/symfony-rocks/) - It happens that we are using symfony for a pretty long time (in fact since it's beginning) and what is probably more important we always considered PHP as the only "right" language :) For the last few months we were extending our horizons and digging into similar to symfony solutions. Obviously first things we paid - [Play with me in symfony2 game](https://www.symfonylab.com/play-with-me-in-symfony2-game/) - Hi to all who can't live without symfony :) I've finally decided today to install symfony2 under Windows7 and see what the beast it is. Also it's interesting to see its status, I really can't believe s2 can be ready until end of year. So I've decided to go with simplest "sandbox" way and after - [More slides from symfony2 live conference](https://www.symfonylab.com/more-slides-from-symfony2-live-conference/) - Fabien Potencier: Unit and Functional Testing with Symfony2 Long live to PHPUnit, Lime is dead? It seems that symfony2 is very serious about using PHPUnit and we actually very happy about that. PHPUnit is really professional and well supported library. I'd say Selenium + PHPUnit = great PHP testing experience :) Francois Zaninotto: Symfony2 meets - [Interview with Lawrence Krubner](https://www.symfonylab.com/interview-with-lawrence-krubner/) - Hi symfonians and symfoniacs! Today we introduce new section on our site. It's about PEOPLE in symfony world and the ways they use symfony. We've prepared a few questions and asked a few symfony guys to respond them. It was always interesting to me to hear voice of symfony developer - to know which plugins - [The Presentations From Recent Symfony2 Live Conference](https://www.symfonylab.com/the-presentations-from-recent-symfony2-live-conference/) - So symfony2 conference is over and here are some presentations from there. While we've heard some upset feedbacks from listeners, slideshows show that in fact some great and cool features are coming to symfony, Doctrine and Propel . I'd say that now it's even more completed to choose between these ORMs. "Symfony2 and Doctrine2 Integration" - [Geo Symfony](https://www.symfonylab.com/geo-symfony/) - As google recently announced new geo-location features (which seems to us really amazing and provides great opportunities for cool mashups in tied with another great simplegeo.com service): http://www.google.com/intl/en_us/latitude/intro.html we've decided to make an overview and figure out what information is available about using symfony with geo services. Some time ago we've already written about usage - [Using new features in sfPropel15Plugin](https://www.symfonylab.com/using-new-features-in-sfpropel15plugin/) - sfPropel15Plugin features two new tools, sfFormPropel::embedRelation(), and sfFormPropel::mergeRelation(). They allow you to add, edit, and remove related objects in the same form as the main object. See video here from Francois Zaninotto: mergeRelation from Francois Zaninotto on Vimeo. - [Our site top 10 most popular symfony articles of all times](https://www.symfonylab.com/our-site-top-10-most-popular-symfony-articles-of-all-times/) - 1. Tricks with symfony .htaccess http://www.symfonylab.com/tricks-with-symfony-htaccess/ 2. Extra questions and solutions for sfGuardPlugin http://www.symfonylab.com/extra-questions-and-solutions-for-sfguardplugin/ 3. Backend generator theme http://www.symfonylab.com/backend-generator-theme/ 4. Extending sfGuardPlugin (part 2) http://www.symfonylab.com/extending-sfguardplugin-part-2/ 5. How to populate object_select_tag with your own objects http://www.symfonylab.com/how-to-populate-object_select_tag-with-your-own-objects/ 6. How to customize login action for sfGuardPlugin http://www.symfonylab.com/how-to-customize-login-action-for-sfguardplugin/ 7. Propel Criteria Builder http://www.symfonylab.com/propel-criteria-builder/ 8. Symfony 2 Again http://www.symfonylab.com/symfony-2-again/ 9. - [The first thoughts..](https://www.symfonylab.com/the-first-sight/) - I'd like to start talking about the symfony framework with the question to you. Do you really need it? I mean is there the strong reason why you decided to use Symfony? I spent quite long time looking for a good PHP framework. Of course I have a couple of hand-written frameworks which I used - [Is There Search Without Sphinx](https://www.symfonylab.com/is-there-search-without-sphinx/) - Well, here we are going to mention some search engine alternatives which can be used in symfony. We were already writing about using of sphinx plugin. As quick alternative you can always use the very simple method mentioned in symfony 1.0's Askeet tutorial: How to build a search engine? Recently I've read the following article - [Another 5 cents to estimate how big is symfony community ](https://www.symfonylab.com/another-5-cents-to-estimate-how-big-is-symfony-community/) - Yesterday we were posted on our twitter account link to one interesting post which is about an attempt to estimate # of symfony community members. It was pretty fun to read the method of estimation as well as comments to actual post. We'd rather don't agree with the method of estimation but overall conclusion seems - [Web Services and Symfony](https://www.symfonylab.com/web-services-and-symfony/) - Hi, have you ever thought about building web services on top of symfony? Or write client to access web services from symfony? Here we will provide some thoughts about work with web services using symfony. Web service is something you need if you feel that your web application need to communicate with the rest of - [Apostrophe (Symfony driven CMS) Screencasts](https://www.symfonylab.com/apostrophe-symfony-driven-cms-screencasts/) - ..found today a bit outdated Apostrophe CMS Screencast (was created about 3 months ago) so it's pretty possible you've already seen them but it was fun for me to look it through (unfortunately still did not have time to dig into Apostrophe CMS). Apostrophe CMS Screencast Reordering Images in a Slideshow Adding Video to Media - [Introduction to Doctrine 2](https://www.symfonylab.com/introduction-to-doctrine-2/) - Found today interesting talking about Doctrine 2 with Jonathan Wage: Air date: March 10, 2010 Hosted by: Cal Evans Guest: Jonathan Wage - [Symfony news for last week](https://www.symfonylab.com/symfony-news-for-last-week/) - This week Fabien Potencier has announced that next after symfony 2 stable release (symfony 3 project name is "trinity") is planned on early 2011. As it was mentioned symfony 3 is already available as alpha and will work only in Windows environment (so the main task for symfony team now is to learn from scratch - [Using Symfony with Google App Engine?](https://www.symfonylab.com/using-symfony-with-google-app-engine/) - As you have probably heard Google has launched its marketplace for google apps last week. The reasons why using of Google App Engine can be useful for us are: they provide free cloud hosting (yes there are big limitations though) and which is the most important - with starting marketplace it's great opportunity to monetize - [Symfony CMS frameworks comparison (updated)](https://www.symfonylab.com/symfony-cms-frameworks-comparison/) - First of all it's worth to mention that only SteerCMS is Propel-oriented, other 3 requires Doctrine. Also Diem, Sympal and SteerCMS provides not only actual CMS features but additionally extra functionality like email messaging, caching, commenting, internal search engine, etc. Apostrophe looks pretty young and it still needs more work to become really comparable to - [Job Queue in Symfony](https://www.symfonylab.com/job-queue-in-symfony/) - The project is growing up like Alice after drinking poison. You expected that it should handle only a few requests and eventually it has to serve many more requests at same moment. Or another scenario - you need to run at once a few tasks and make sure they all are going to be completed - [Fabien Potencier - the father and the mother of Symfony framework](https://www.symfonylab.com/fabien-potencier-the-father-and-the-mother-of-symfony-framework/) - This post is dedicated to Fabien Potencier - the father and the mother of Symfony framework. Only biography we've found about him is also know as so-called "little history of symfony": 1994 to 1997 Fabien went to the Ecole National Sup?rieure des Mines de Nancy. 1997 to 1998 Added master entrepreneur at HEC School of - [Symfony TV](https://www.symfonylab.com/symfony-tv/) - Hi everybody, We've decided to introduce Symfony TV area on our site. So starting from this post we are going to locate there symfony related videos. For now these are videos from Symfony Live 2010 conference. On our opinion it's important addon to presentation slides which we've provided in previous posts. You can see the - [Symfony Live Presentation. Part 2](https://www.symfonylab.com/symfony-live-presentation-part-2/) - Here goes another round of presentations taken from Symfony Live 2010 Day 2. I've put them in order of importance for me and left some comments. So lets start.. Symfony 2.0 revealed by Fabien Potencier. It's surely the most important presentation on Symfony conference. Symfony's father Fabien Potencier presents next major symfony release and uncover - [Symfony Live presentations](https://www.symfonylab.com/symfony-live-presentations/) - These are presentations from Symfony 2010 Day 1 (I'd name it "Doctrine" day). Doctrine 2 - Not The Same Old Php Orm Very good introduction to next doctrine version (will be supported for only php 5.3 though, rewritten and improved Doctrine Query Language). I recommend to watch these slides before make decision about using ORM - [symfony question from Javi](https://www.symfonylab.com/symfony-question-from-javi/) - We've recently got the following question from newbie and thought someone may have a quick response for this to help the guy :-) Hi, these are my steps first and then my question: I have added this model and this fixture to my app : Birthday: columns: testdate: date Birthday: example: testdate: "2009-1-1" I have - [Using Symfony and Sphinx](https://www.symfonylab.com/using-symfony-and-sphinx/) - In continue to our previous post RSS Reader Symfony 1.4 Tutorial we've decided to add to our RSS Reader search feature. One which may fits our purposes is Sphinx. So here are a few simple steps to prepare Sphinx for using 1. Get the latest stable release from here and untar it somewhere on your - [RSS reader symfony 1.4 tutorial](https://www.symfonylab.com/rss-reader-symfony-1-4-tutorial/) - For schema file we propose to use this one: category: actAs: { Timestampable: ~ } columns: name: { type: string(255) } description: { type: string(4000) } parent_id: { type: integer, default: 0 } source: actAs: { Timestampable: ~ } columns: category_id: { type: integer, notnull: true } name: { type: string(255) } description: { type: - [upgrade to symfony 1.4](https://www.symfonylab.com/upgrade-to-symfony-1-4/) - Was trying to upgrade to symfony 1.4 from symfony 1.2 without luck. After a few attempts to upgrade with usual command "pear upgrade symfony/symfony-1.4.0" and "pear upgrade symfony" I decided today is wrong day for upgrade it always returned: File http://pear.symfony-project.com:80/Chiara_PEAR_Server_REST/p/packages.xml not valid (received: HTTP/1.1 404 Not Found So I thought there must be something - [Sf Plugins Reviews](https://www.symfonylab.com/sf-plugins-reviews/) - One of the features we were thinking about is sf plugins reviews page. Unfortunately, what they have on native symfony site is far from ideal, e.g. when you'd try to search for sf 1.0 doctine plugins: http://www.symfony-project.org/plugins/filter?filter[sf_1_0]=on&filter[doctrine]=on&filter[category_id]=&filter[name]= You get some strange results. First of all there will be included plugins for sf 1.2 and 1.1 - [Quick note about deleting records in Symfony/Propel](https://www.symfonylab.com/quick-note-about-deleting-records-in-symfonypropel/) - Just a quick note about deleting records in Symfony/Propel. I've tested it both in symfony 1.2.x and symfony 1.0.x and got the same result. So when you try to delete all records from table this way: $c = new Criteria(); $rs = TablePeer::doDelete($c); nothing happens but when I tried to add any dummy criteria to - [OpenEats review](https://www.symfonylab.com/openeats-review/) - [ratings] This time we've decided to review open-source Open Eats Project "an open source recipe/meal planner that can be accessed by anyone across the Internet much like other commercial sites": http://www.openeats.org/ This is not only web-site though but also symfony 1.0.x driven project available for downloading. Does not look like project is actively evolving, last - [Postcrossing symfony-driven site review](https://www.symfonylab.com/postcrossing-symfony-driven-site-review/) - [ratings] Today we've randomly selected for the review this symfony-driven site (mentioned in list of applications developed with symfony symfony sites): http://www.postcrossing.com So first of all it has simple but cool idea of postcards sharing. Site works fast, has clean and simple design and navigation w/o any noticeable bugs or disadvantages. Blog area is implemented - [sfUploadManagerPlugin](https://www.symfonylab.com/sfuploadmanagerplugin/) - [ratings] The `sfUploadManagerPlugin` manage uploaded files in a database. Usefull with swfUpload or equivalent to be able to retrieve all file informations (original filename, size, mime type, uploaded date ...). http://www.symfony-project.org/plugins/sfUploadManagerPlugin Sounds like interesting plugin but luck of information make it less worth than it could be. So first of all it refers to the - [Our community is growing, what's next?](https://www.symfonylab.com/our-community-is-growing-whats-next/) - Dear SymfonyLab user, We are happy to say that our community is quickly growing. Our site is not young we actually started to write about symfony and symfoniacs almost from the beginning of symfony era and since that time we keep informing symfony world about efficient using of this framework, publish own plugins, review symfony-driven - [Ok, so Doctrine.. Part 2](https://www.symfonylab.com/ok-so-doctrine-part-2/) - As we announced in our previous post we've decided to start using Doctrine instead of Propel. The first steps in this direction are not about starting the new project though. We would like to see how simple would be to replace Propel with Doctrine in very simple project (like 2-3 simple DB tables). It's good - [Ok, so Doctrine..](https://www.symfonylab.com/ok-so-doctrine/) - Eventually, when Doctrine is officially selected as default ORM for symfony 1.3 we've decided that it's time to use Doctrine. We knew all Doctrine's advantages before but we used Propel from the very beginning of symfony and it's actually sad to understand that Propel lost this war. The biggest reason why it's not fun to - [Using git for symfony projects](https://www.symfonylab.com/using-git-for-symfony-projects/) - Hi, If you finally decided to use version control software for your current symfony project this small article is for you. We use git and want to share some information about it with you. So first of all you'll have to install it: 1. wget http://kernel.org/pub/software/scm/git/git-1.6.4.1.tar.gz (of course number of version most probably will be - [A note on approach to communicate with multiple databases in symfony](https://www.symfonylab.com/a-note-on-approach-to-communicate-with-multiple-databases-in-symfony/) - Pretty usefull article: http://www.phpcult.com/blog/2009/08/talking-to-multiple-databases-with-symfony-1-2/ It's only for propel though, interesting if similar approach would work for doctrine as well. Here is the reason why Vidyut Luther had to use multiple databases: I can’t just extend the existing application for reasons we don’t need to get into, but I do need to interface with the data, - [Symfony Conference most interesting slides / ideas](https://www.symfonylab.com/symfony-conference-most-interesting-slides-ideas/) - So as we've promised here goes more slides for online viewing: 1. Symfony 2 by Fabien Potencier It's long one but contains great information "where will be moving symfony in next 1-2 years". Frankly, I'm a bit confused b/c I feel that symfony 2 wont be compatible with 1.x branch. I did not hear that - [Symfony Conference Paris 2009](https://www.symfonylab.com/symfony-conference-paris-2009/) - Definitely interesting to read through conference slides (downside is only 3-4 presentation are in English and the other are French): First Day Slides Second Day Slides The most impressive to us is Yahoo sliders. It's food for thinking. Here is just a few things we've discovered after presentation reading: R3 (Easy Localization and Translation) ysfAPIClientPlugin - [Symfony / PHP Compatiblity... Biggest problem.](https://www.symfonylab.com/symfony-php-compatiblity-biggest-problem/) - While reading this article http://www.compdigitec.com/labs/2009/01/24/set-of-patches-to-allow-php-gtk2-to-compile-with-php6/ was surprised that php6 is so close. I must say I'm not a fan of php upgrades. I mean for me php always had enough functions / syntax and I would not ever change them (since php4) except fixing bugs. Of course this is wrong thinking b/c moving forward is - [Symfony GTK](https://www.symfonylab.com/symfony-gtk/) - Just a thought if there is a way to use symfony and GTK together? Am looking through this book quickly: Pro PHP GTK and looks pretty good. There is thread in forum regarding GTK: http://forum.symfony-project.org/index.php/m/37926/?srch=gtk#msg_37926 which generally says that there is no way to use GTK and symfony but probably can be written "view" plugin - [Using PHP extension for symfony pages](https://www.symfonylab.com/using-php-extension-for-symfony-pages/) - Hi all, I'm wondering if anyone ever needed to use .php extension for symfony pages. e.g. you may want to make your urls look like http://domain.com/home.php or http://domain.com/mypage.php. If so here is the solution: First of all dont forget to enabled suffix option in your apps/frontend/config/settings.yml: .settings: suffix: .php Then important to add the line - [Running 2 instances of symfony on one machine](https://www.symfonylab.com/running-2-instances-of-symfony-on-one-machine/) - Are you still using both symfony 1.0.x and symfony 1.2.x We've figured out another one solution which you can use to keep both branches on same Windows machine. So you can keep symfony 1.0.x branch configured on Windows and you can run portable Ubuntu: Portable Ubuntu Runs Ubuntu Inside Windows and install symfony 1.2.x on - [Symfony "How To" lessons announcement](https://www.symfonylab.com/symfony-how-to-lessons-announcement/) - We are happy to announce the upcoming publishing of SymfonyLab lessons. In some sense this would work similar to Askeet and Jobeet projects. We are planning to publish step-by-step articles which would describe how to create some kind of project. At the moment we consider the lessons for creating bidding / auction project (bideet). But - [Add PHP code to Your CSS in Symfony](https://www.symfonylab.com/add-php-code-to-your-css-in-symfony/) - Hey, I'm inspired by this article today: - [Distributing symfony project](https://www.symfonylab.com/distributing-symfony-project/) - Hi, It's more like question than post though. So we considere the possible options to distribute the project easily. Never had about any kind of installer for symfony project or any kind of installation process. Moreover as it turned out freezing is not the case starting 1.1.x branch as it mentioned here: http://www.leftontheweb.com/message/Distributing_your_project_with_symfony_embedded The good - [Javascript frameworks quick note](https://www.symfonylab.com/javascript-frameworks-quick-note/) - I guess finally I became jQuery fan. It did not happen quickly though. As symfony from the beginning uses Prototype I was staying for the long time prototype-oriented :-) But I believe in last time improvements and extra plugins developed for jQuery went through critical edge and now it's beyond comparison (this is for discussion - [Symfony 2 Again](https://www.symfonylab.com/symfony-2-again/) - Am looking through slides of Fabien's talk on phpQuebec and seeing that symfony goes in correct direction. I expect that newbies wont be happy as it seems to be more tricky. At this stage would be helpfull some kind of visual tool. If someone remembers that's what happened with TurboVision (which was good but too - [Reading Symfonians Twitter](https://www.symfonylab.com/reading-symfonians-twitter/) - Did not read symfonians twitter for a long time and decided to look through it. Found out some really cool links which can be used for symfony development purposes and want to share with you: http://www.phpedit.com/Download/Public-preview-releases (now includes symfony) http://www.logicbox.net/jquery/simplyscroll/ http://www.mongodb.org/display/DOCS/Home http://gate.ac.uk/ http://www.thomasweidner.com/flatpress/2009/03/03/file-uploads-and-upload-progress/ http://www.tuxradar.com/content/linux-tips-every-geek-should-know Enjoy your day! - [Is open-source for open-source?](https://www.symfonylab.com/is-open-source-for-open-source/) - How much open-source symfony-driven projects do you know? I guess I know only Jobeet and Askeet. But I believe that with such powerfull open-source framework there must be a lot of open-source projects. So I've decided to investigate and goes here: http://trac.symfony-project.org/wiki/ApplicationsDevelopedWithSymfony Not too much in Open-source section but lets see what we have there - [Something that impressed me this night](https://www.symfonylab.com/something-that-impressed-me-this-night/) - Just read this post and felt proud for symfony: http://www.symfony-project.org/blog/2009/02/18/dailymotion-powered-by-symfony Symfony 2.0 was something I was not ready to hear about and I decided to google around and see maybe I missed anything and symfony 2.0 is already discussing but actually all I've found is only this photo: Did anyone already hear anything else about - [So does it worth?.. or do you still work with 1.0 branch?](https://www.symfonylab.com/so-does-it-worth-or-do-you-still-work-with-10-branch/) - Dear symfoniacs, So symfony team had enough time since they released 1.2 in December to polish this version (not mentioning about 1.2.3 release) and published Jobeet manual. And we've finally decided that it's time to completely switch to using 1.2 branch. We've already written about branches comparison and its advantages/disadvantages in our articles: Give a - [Dear Friend](https://www.symfonylab.com/dear-friend/) - Dear Friend, Christmas is around the corner, another new year is almost upon us, how time flies... Really big thank you for reading and commenting our articles and plugins. We wanted to wish everyone a merry Christmas! Take care of yourselves and each other! - [sfGallery screenshots](https://www.symfonylab.com/sfgallery-screenshots/) - Hi, There was a request in comments to sfGallery post to provide some screenshots. Why not, here they are. It has minimalistic layout just to give you ability to easily embed this plugin into your project and customize templates the way you need. So just to remind we have 2 admin backend modules to manage - [WYSIWYG is the best Symfony friend](https://www.symfonylab.com/wysiwyg-is-the-best-symfony-friend/) - I'm sure if you allow visitors to submit any content on your site you use WYSIWYG in your project. Not much of them knows HTML so you have somehow to simplify their lives. Of course, you can go with built-in TinyMCE but we dont really like it. There is also easy way to use FCKEditor - [Buzz around 1.2 and how far is 1.3 ?](https://www.symfonylab.com/buzz-around-12-and-how-far-is-13/) - Since 1.2 was released there were written a lot about new symfony version. We actually did not even expect this may happen so fast. After our last publication about 1.2 there were a couple of questions mostly like "what are the best features in 1.2?". I guess the simplest and fullest explanation of 1.2 features - [sfGallery plugin 1.0.1 (installation step-by-step)](https://www.symfonylab.com/sfgallery-plugin-101-installation-step-by-step/) - Hi, we've decided to publish detailed step-by-step instruction on how to start using sfGallery. So first of all make sure you have these plugins installed: sfGuardPlugin sfModerationPlugin sfPropelActAsCountableBehaviorPlugin sfPropelActAsTaggableBehaviorPlugin Then for frontend/backend allow modules: frontend: config/settings.yml enabled_modules: [default, sfGallery] backend: config/settings.yml enabled_modules: [default, sfModeration, sfGalleryAdmin, sfPhotoAdmin] and in propel.ini you have to enable behaviours and - [Give a try to Symfony 1.2](https://www.symfonylab.com/give-a-try-to-symfony-12/) - And finally this day is happened. We've decided to give a try to symfony 1.2. Let us mention that we did not even give a try to symfony 1.1. There was a couple of reasons why we did not do that. The main reason is why to migrate to framework branch which is not fully - [sfGallery plugin](https://www.symfonylab.com/sfgallery-plugin/) - Hi, We are finally ready to release sfGallery plugin to manage galleries and photos in symfony application. It requires the following plugins to work properly: sfGuardPlugin sfModerationPlugin sfPropelActAsCountableBehaviorPlugin sfPropelActAsTaggableBehaviorPlugin There is included backend which allows to administrate/moderate images/galleries. You can download the plugin here: sfGalleryPlugin and give it a try! We are awaiting for your - [Latest Symfony statistics](https://www.symfonylab.com/latest-symfony-statistics/) - Hey statistics lovers! :-) This information is for you. It's some major statistics we've tracked during last few monthes. We thought this information can be interested in some way for symfony community. Of course, it is highly tied with content posted on our site and therefore search requests are specific to what we write about. - [About SEO in symfony projects](https://www.symfonylab.com/about-seo-in-symfony-projects/) - At some point you should start worring about your symfony project SEO characteristics. We expect that you are familiar with the main SEO rules / ideas therefore only going to provide some specific solutions. So first of all you may be interested in existing symfony plugin simpleSeoPlugin http://www.symfony-project.org/plugins/simpleSeoPlugin It allows to add keywords and description - [Plugin to manage galleries and photos. Announcement](https://www.symfonylab.com/plugin-to-manage-galleries-and-photos-announcement/) - Hi all, We are about to publish symfony plugin to manage galleries and photos. It's quite strange but there is still no good plugin which would allow users to create own photo galleries for symfony project (assets and medialibrary plugins are good ones but they are more for administration purposes). Plugin has both frontend and - [In continue to htaccess trick](https://www.symfonylab.com/in-continue-to-htaccess-trick/) - Hi, we've already published bunch of information about tricks with .htaccess in symfony projects (see e.g. Tricks with symfony .htaccess and How to hide symfony project in subfolder). Here is another one helpfull tip which you may use in your project. It works a bit differently from what we've already wrote about "How to use - [Time to change skin](https://www.symfonylab.com/time-to-change-skin/) - Hi everyone, So about skins.. This short note is for those who wants to allow customizing of their project with themes. It's really easier than you can thought. As a basic manual we'd recommend this snippet: http://www.symfony-project.org/snippets/snippet/115 (btw, there is also the other one which explains some other aspects of this stuff: http://www.symfony-framework.com/2008/05/22/themes-management-system-with-symfony-step-by-step-tutorial/). So main - [Symfony's super puper cache plugin](https://www.symfonylab.com/symfonys-super-puper-cache-plugin/) - You know.. I was never had a chance to speed up symfony project performance. I always knew there are a bunch of cache plugins but also always performance was enough good even without any type of caching. And now I had a chance to investigate this question. I googled for "sfSuperCache" and found some performance - [What Google Gears may offer to Symfony ?](https://www.symfonylab.com/what-google-gears-may-offer-to-symfony/) - Hi all, I'm pretty sure you've already heard of Google Gears (now it's just "Gears" as the other companies along with Google joined to the development process), so just to remind Gears is a browsers plug-in which makes possible your site works offline on users machines. This technology incudes 3 main core elements: LocalServer Cache - [use YML for storing data in db](https://www.symfonylab.com/use-yml-for-storing-data-in-db/) - Sometimes you may need to store complicated data with non-fixed fields/data types in table. There are different ways for that but if we use symfony where YML is so native and good known - why dont store data in table as YML-formed value. It's pretty straightforward with using of Spyc class and its methods YAMLLoad, - [Flex + Symfony = ?](https://www.symfonylab.com/flex-symfony/) - I must say the older I'm getting the more pessimistic I'm about new technologies. All this buzz around RIA .. I was never tried to understand what is going on there, technologies are changing one other: Laszlo, OpenLaszlo, Flex, AIR, Silverlight. Last thing I've heard was that Flex with AMFPHP is something worth of my - [Another one constants management plugin](https://www.symfonylab.com/another-one-constants-management-plugin/) - Hi all, We were happy to see that our plugins are usefull and used in following articles about symfony theme: http://www.symfony-framework.com/2008/05/22/themes-management-system-with-symfony-step-by-step-tutorial/ Therefore we decided to add to symfony repository the other plugin which we already announced and described on our site a long time ago (see this: http://www.symfonylab.com/sfadvancedconstplugin/ So from now on this plugin is - [Backend generator theme](https://www.symfonylab.com/backend-generator-theme/) - Hi, I'm wondering if there are available admin themes somewhere. It's really strange but simple googling and search on symfony forum does not give me anything new. What I knew before is good Joomla-like theme available here (this one is easy to use and integrate): http://www.symfony-project.org/forum/index.php/m/16515/ also there is available plugin based on ExtJs but - [How to handle page representation dynamically](https://www.symfonylab.com/how-to-handle-page-representation-dynamically/) - Hi all, Lets say you want to allow each user's group to see different page style. You may need to change page layout and css file for this dynamically. Lets imagine we have very similar functionality for a few user groups but we want their dashboard pages look different. Here is the code sample which - [So what symfonians are talking about?](https://www.symfonylab.com/so-what-symfonians-are-talking-about/) - Hi, as you know we propose 2 additional services along with writing about symfony. First one is articles voting service and the other one is twitter symfony community. Voting one is a good chance to read usefull articles and dont waste time on the other ones. We aggregate most of articles and then we personally - [How to customize login action for sfGuardPlugin](https://www.symfonylab.com/how-to-customize-login-action-for-sfguardplugin/) - Actually, we are going to raise here 2 topics: how to customize login action how to fix referer problem for sfGuardPlugin Both are quite often using in real life projects. For instance, on logging in user stage you may want to store some extra information which is not provided by sfGuardPlugin by default. Lets say - [One backend, many sites](https://www.symfonylab.com/one-backend-many-sites/) - It's good regularly to read through symfony forum. Sometimes there can be found pearls. It makes me feel I'm ready to keep using symfony if such problems are already solved :-) So here is the one: I have a homegrown CMS that I use for my clients that I want to port over to the - [Why symfony-project does not publish my posts on community page](https://www.symfonylab.com/why-symfony-project-does-not-publish-my-posts-on-community-page/) - I noticed that during last 3 weeks none of our posts were published on community aggregation of blogs on symfony-project. Hopefully this is just aggregation software fault. Somehow I had the same problem when used feedburner plugin for WP - symfony-project aggregator also was not able to fetch those posts so I had to disactivate - [Extending sfGuardPlugin (part 2)](https://www.symfonylab.com/extending-sfguardplugin-part-2/) - I've totally forgot that at the end of post Extra questions and solutions for sfGuardPlugin we have promised to write how to implement complicated user statuses for sfGuardPlugin. Sorry Hugo (one of our commenters), you was hoping it will be quickly but only now we have got a chance to write next post about extending - [Cleanup my drafts. Part 2.](https://www.symfonylab.com/cleanup-my-drafts-part-2/) - This time my drafts cleanup is not directly related to symfony but these are the classes which I'm sure you will use for your symfony projects: htmlSQL is a experimental PHP class which allows you to access HTML values by an SQL like syntax. This means that you don't have to write complex functions (regular - [InnoDB creating table problem](https://www.symfonylab.com/innodb-creating-table-problem/) - Hi, a quick note. Somehow I had a problem with performing propel-build-all. I had a few schema.yml files and building process was going fine for them except last one schema. It did not create a table for that schema.yml and reported about mysql error (cant create a table). I think I killed about an hour - [Twitter symfonians community aggregator](https://www.symfonylab.com/twitter-symfonians-community-aggregator/) - Inspired by Twitter open-source community we are proudly announce Twitter's symfonians community: http://twitter.com/symfonians/ We aggregates all Twitter talks on our sidebar so from now everyone can see what symfonians are talking about while they are building their greatest projects! - [Extra questions and solutions for sfGuardPlugin](https://www.symfonylab.com/extra-questions-and-solutions-for-sfguardplugin/) - Hi, I really know a very little number of symfony projects where would not be used sfGuardPlugin. I should say I've seen a few custom self-written user authentification solutions but I did not notice much difference. So in other words those were wheel re-inventions. Here is a good place to find the answers on the - [Am I Symfoniac?](https://www.symfonylab.com/am-i-symfoniac/) - Sometimes I'm asking myself if I have really to use Symfony? Why not the other PHP framework? Or do I have to know when/where to use another PHP framework for the specific cases, e.g. maybe CakePHP would be better exactly for THIS project? And should I insist on choosing a symfony as a platform for - [Voting service for SymfonyLab](https://www.symfonylab.com/voting-service-for-symfonylab/) - The service we've been using to vote for usefull Symfony/AJAX resources went down because of a bunch of hacker attacks and we decided to not start it again. Old service used Pligg which as it turned out is quite buggy and vulnerable to attacks. Also I was kinda disappointed when saw the following picture on - [Our stats for January](https://www.symfonylab.com/our-stats-for-january/) - In current 2008 we are still growing and very soon we are going to annouce our new service (instead of devgg one which we had to close). The greatest news for us in January was that we've got high page rank from Google (PR=5) in a very short time and it allows us to start - [Clean out my drafts](https://www.symfonylab.com/clean-out-my-drafts/) - Hi all, somehow I bookmarked a few usefull links (I found them in somone's bookmarks actually) and I put them into my drafts. I was going to write a few posts on that topics. And now when I'm doing drafts cleanout I understand that I forgot what the hell I was going to write. I - [A note about Symfony security faults](https://www.symfonylab.com/a-note-about-symfony-security-faults/) - It was a while ago when I wrote about a random site taken out from "Applications Developed With Symfony" section. As you can remember I simply wrote about possible problems that may expect owner of this site. Preventing measures includes deleting of _dev files as well as extra securing of backend. There were a bunch - [Phoogle usage with Symfony](https://www.symfonylab.com/phoogle-usage-with-symfony/) - If you have ever needed a way to include Google Maps functionality into your project you should know what is Phoogle. There is also GoogleMap plugin for Symfony but I was not able to make it adding a point to a map based on lang an long values. So it's good to know that there - [How to hide symfony project in subfolder](https://www.symfonylab.com/how-to-hide-symfony-project-in-subfolder/) - As for me, this is gonna be quite popular task - do not use symfony project in root of web folder but keep it under kinda "forum" or "users" folder. This way you may use in root of web folder (public_html or web or wherever you have called it) another type of software (e.g. Joomla). - [Merry Christmas and Best Wishes for the New Year](https://www.symfonylab.com/merry-christmas-and-best-wishes-for-the-new-year/) - As 2007 draws to an end and we thought it would be a good idea to close it off with an end of year message. Next week weтАЩll all be off visiting loved ones, relaxing, overindulging. There were a few important things happened this year. Symfony framework was kept improving a lot and it became - [Review of WilliamAnderson.ca](https://www.symfonylab.com/review-of-williamandersonca/) - Ok, so this idea came to me on the stage when we've been launching SymfonyLab.com. I was going to review here existing symfony-based sites and I want finally to start doing that. I'm not a hacker and I'm not going to crack those resources. I'm also not security expert and the only reason why I'm - [SymfonyLab Jobs](https://www.symfonylab.com/symfonylab-jobs/) - Today we launch new symfony-related service which is called 'SymfonyLab Jobs': Jobs.SymfonyLab.com It uses job-a-matic service (and that's why it provides access to huge list of available vacancies) and allows to post a job as well as look for the new vacancies. You may use this service absolutely for free if you are looking for - [Would I use Motilee?](https://www.symfonylab.com/would-i-use-motilee/) - Would I use Motilee? Well, maybe.. I'll use it for sure in order to learn something new from its code. I bet it must be excellent sample of coding practices. Well, maybe not excellent but it's always good to compare code written by the other experienced symfony developers with our own code. At least I - [sfAdvancedConstPlugin](https://www.symfonylab.com/sfadvancedconstplugin/) - I found out that I hate to keep in mind ID of pending status value in statuses table or the other values like that. And actually I had a plugin to resolve this problem which is called sfConstPlugin but as it turned out it's hard to manage it sometimes especially if you want to provide - [The power of rsync](https://www.symfonylab.com/the-power-of-rsync/) - I've never really faced the problem of differences between development and production versions before. The reason is development version always was stored on my local PC and production one was stored on the server. Or I always tried to kept it in my mind (the differences between versions) and sometimes I felt really crazy about - [Dynamic access to classes in Symfony](https://www.symfonylab.com/dynamic-access-to-classes-in-symfony/) - It's about something about how to simply your life. E.g. sometimes you may want to store table names in your DB. The reasons why you may want it are different. E.g. I want to generate constants for reference tables and in order to do that I use the following approach: $tables = sfDatabaseTablePeer::doSelect(new Criteria()); if - [sfEmailTemplatePlugin 0.0.1 is released](https://www.symfonylab.com/sfemailtemplateplugin-001-is-released/) - Hi, So first beta of sfEmailTemplatePlugin is finally released. Thanks a lot for all the guys who commented an initial post about this plugin (Eric, Gerald, COil and James). I must say this is really helpfull to read these warm words and it inspires me to work better. This first beta does not include tag - [sfEmailTemplatePlugin](https://www.symfonylab.com/sfemailtemplateplugin/) - We are going to publish soon new plugin which has a goal to simplify email templates management. It includes admin area where user is able to create and manage email subject/body (both html and text versions) and them system-wide constant values are generated for each email template and its elements, e.g. MYTEMPLATE_SUBJECT and MYTEMPLATE_BODY. This - [Symfony automation idea](https://www.symfonylab.com/symfony-automation-idea/) - I already wrote about symfony automation stuff (and will keep writing about that for sure!). By the way, there were a couple of comments on this blog which showed that Symfony RAID is something that might be real bomb. But today I'd like to write about something simpler. This good idea visited me in the - [sfSupportPlugin](https://www.symfonylab.com/sfsupportplugin/) - `sfSupportPlugin` is a symfony plugin that provides support functionality. It allows site visitors to create tickets and reply them. Plugin requires sfGuardUser in order to provide connectivity to user submodules. There is also admin module which allows to manage tickets and replies. Install the plugin symfony plugin-install http://plugins.symfony-project.com/sfSupportPlugin Enable module in your settings.yml sfSupport, sfSupportAdmin - [SymfonyLab statistics](https://www.symfonylab.com/symfonylab-statistics/) - SymfonyLab site is about a week online and I'd like to share some of our statistics for October and put here some other information related with that. So first of all bad news we had to turn off FeedBurnerSmith plugin because of symfony community's blog was not able to retrieve our posts and our posts - [How to populate object_select_tag with your own objects](https://www.symfonylab.com/how-to-populate-object_select_tag-with-your-own-objects/) - Sometimes you need to have an ability to show limited number of elements in your select objects or sort elements by name or so. I figured out that this feature was added to object_select_tag later so that not everybody knows about that. This feature's name is 'peer_method' - effectively you create your peer method which - [Tricks with symfony .htaccess](https://www.symfonylab.com/tricks-with-symfony-htaccess/) - I decided to put here a couple of .htaccess rules that may help you in your daily practice to save the time trying to get it working. Real .htaccess guru of course wont find it usefull but maybe someone will tell me thank you :-) How to use Symfony on naked IP without domain name - [sfCaptcha documentation is updated](https://www.symfonylab.com/sfcaptcha-documentation-is-updated/) - There were the major updates to sfCaptchaPlugin documentaation. Thanks a lot to crux_op for keeping this documentation page clean and up-to-dated. I'd like to ask the community opinion on how this plugin should progress, i.e. which improvements you want to see in it. What I'm thinking so far is about kind of skins for it, - [SimpleXML in Symfony](https://www.symfonylab.com/simplexml-in-symfony/) - I thought I got crazy about it. I've discovered SimpleXML for myself and I felt in love with it. I never though work with XML may become such simple and then... Then I thought I really hate SimpleXML coz it took out almost hour of my life. So here is the situation I have a - [Uml2Symfony](https://www.symfonylab.com/uml2symfony/) - In previous post I wrote about Symfony2Exe stuff and now I'd like to bring a question of UML. I can't say however how important is using of UML as I've never used it. Not because I dont know it but because the other dont know it. But as I figured out there is a tool - [Symfony2Exe](https://www.symfonylab.com/symfony2exe/) - I have just read about an ability to convert php applications into exe with Wapache project: How to turn a php script to an exe..for free As it's written in post: This could be used for a demo/trial of a web application. A windows installer could also be used (NSIS works well and is free) - [sfSettingsPlugin 1.0.1 has been released](https://www.symfonylab.com/sfsettingsplugin-101-has-been-released/) - New version of sfSettingsPlugin is added to Symfony repository: http://trac.symfony-project.com/wiki/sfSettingsPlugin It contains usefull fix to clean out cached file with settings from both frontend and backend environments in production mode. This way user does not have manually clean out cache when he did a change in backend for settings values. However there is still a - [sfCaptchaPlugin 1.0.4 has been released](https://www.symfonylab.com/sfcaptchaplugin-104-has-been-released/) - New version of sfCaptchaPlugin is added to Symfony repository: http://trac.symfony-project.com/wiki/sfCaptchaPlugin It contains small but quite important fix to remove zero from captcha alphabet as it does not fit newer JpGraph version as was reported by some developers. By reviewing the code I noticed that there is used dynamical route for sf_captcha and I remembered that - [sfEmailPlugin](https://www.symfonylab.com/sfemailplugin/) - I'm not sure how about you but I'm always having the problems with testing emails functionality in applications. There are always stuff like user account confirmation or some newsletter notifications which would be good to test out in dev mode. Here is proposed solution which I posted not so far as symfony plugin: http://trac.symfony-project.com/trac/wiki/sfEmailPlugin All - [A note on routing](https://www.symfonylab.com/a-note-on-routing/) - Well, while I've been writing the plugins for symfony I noticed that using of predefined routes (with aliases) is really good to use. As far as I could figured out from sfGuardPlugin routing via php code (not via yml) can be done the following way: if (sfConfig::get('app_sfGuardPluginPlus_routes_register', true) and in_array('sfGuardAuthPlus', sfConfig::get('sf_enabled_modules'))) { $r = sfRouting::getInstance(); - [Symfony + wForms](https://www.symfonylab.com/symfony-wforms/) - I've been using the following library http://www.formassembly.com/wForms/ a couple of times. There is a topic related to wForms on Symfony: http://www.symfony-project.com/forum/index.php/m/16632/?srch=wforms#msg_16632 where using of sfFormValidationPlugin is proposed to be used. Well, I agree that AJAX validation is great solution but in my case I like wForms since they provide cool javascript/css-based solutions for web forms. - [Propel Criteria Builder](https://www.symfonylab.com/propel-criteria-builder/) - Those for somones who really dont like to write criteria code (it's me ;-)) http://propel.jondh.me.uk/criteria/analyse This is utility that converts SQL into PHP Propel code. I found it really usefull. P.S. Thanks to Alex Filatov for this link. - [AJAX with multiple content updates](https://www.symfonylab.com/ajax-with-multiple-content-updates/) - I think that's what finally everyone will come up to. So you want to perform AJAX action and result should be returned not into single div but into multiple divs or another tags. Unfortunately, form_remote_tag allows to point in only one 'update' parameter and this does not resolve the problem. That's why I had to - [sfCaptcha fix](https://www.symfonylab.com/40/) - I've got an email regard to sfCaptcha plugin. I think this can be interesting to everyone who uses this plugin so I decided to publish it here. I'm going also to fix code the way described here but until then this is good advise for everyone who uses my captch solution and sometimes got a - [Swift mailer](https://www.symfonylab.com/swift-mailer/) - I would like to drop here a couple of lines about Swift mailer. If you are going to send message to the big number of email recepients it's obviously you'll need to write a batch script so it processes this in background. And it would be good to have something (mailer layer) that you can - [Big badaboom movement](https://www.symfonylab.com/big-badaboom-movement/) - We are proud to announce that we moved to new domain! So from now on SymfonyLab.com is a new place for Symfony lovers. We are going to review here sites built on symfony and estimate how good they are. And we are planning to keep here the latest versions of our Symfony plugins (some of - [Good enough environment for Symfony](https://www.symfonylab.com/good-enough-environment-for-symfony/) - I've been always using Far manager with a numeric set of plugins (like code highligher, ftp, etc) and I should say that I've really got high performance with it. But when I've started to use Symfony I noticed that I'd need another tool for browsing through project files. So far I know that I dont - [DevGG - digg-like service to manage own RSSs](https://www.symfonylab.com/devgg-digg-like-service-to-manage-own-rsss/) - It's real pain in the ass if you are reading more than 10 RSSs everyday. The worst thing that even if I'll find anything usefull I never have a time to read that but when I have time to read I can't find what exactly I wanted to read. So I decided to do something - [Something I like about Symfony’s plugins](https://www.symfonylab.com/something-i-like-about-symfonys-plugins/) - Hey, I've just noticed that the plugin I've created and uploaded about 3-4 monthes ago was improved by another developers: http://trac.symfony-project.com/trac/wiki/sfCaptchaPlugin That's just a miracle that someone continues to work on this plugin and I think that's something really good about Symfony's plugins :-) Thanks guys! - [Installation Symfony on GoDaddy Virtual Dedicated Server](https://www.symfonylab.com/installation-symfony-on-godaddy-virtual-dedicated-server/) - This information could be interesting for GoDaddy accounts owners. The friend of mine has done this investigation and I'm happy to put it here. So, first we need to install Symfony itself. We have to do it with root access. To get the root access do тАЬsu -тАЭ command without quotes and enter root password. - [sfConstPlugin](https://www.symfonylab.com/sfconstplugin/) - IтАЩve just posted another one plugin sfConstPlugin: http://trac.symfony-project.com/trac/wiki/sfConstPlugin At the first sight it could look like an analogue of sfSettingsPlugin but it's not the same. It automatically generates in your cache php file with constants which has a meaning of the references to atomic tables like statuses, types, etc. It reduces the using of such - [sfSettingsPlugin](https://www.symfonylab.com/sfsettingsplugin/) - Guys, I can't believe I took so fast start with publishing plugins. This is the 3rd plugin I've published and I'm not going to stop ;-) So just take a look here: http://trac.symfony-project.com/trac/wiki/sfSettingsPlugin The `sfSettingsPlugin` is a symfony plugin that provides app wide settings functionality. It automatically generates constant values based on sf_setting table values - [sfCaptchaPlugin](https://www.symfonylab.com/sfcaptchaplugin/) - I've just posted new captcha plugin to list of symfony plugins: http://trac.symfony-project.com/trac/wiki/sfCaptchaPlugin The `sfCaptchaPlugin` is a symfony plugin that provides captcha functionality based on JpGraph library. It gives you the lib and the module to secure your symfony forms in a minute with a good captcha. This plugin minimize time which has to be spent - [sfChartDirectorPlugin](https://www.symfonylab.com/sfchartdirectorplugin/) - There was updated sfChartDirectorPlugin in symfony repository. It could not be installed via command line (due to some problems with package.xml file) and it was fixed so you would be able to install and use sfChartDirectorPlugin for your fun: http://trac.symfony-project.com/trac/wiki/sfChartDirectorPlugin Btw, ChartDirector has updated its software to v.4 (http://www.advsofteng.com/release41.html#enhancements) and there is a lot of - [Keep your projects up-to-dated. Step 1](https://www.symfonylab.com/keep-your-projects-up-to-dated-step-1/) - Not sure how about you but I've been working with symfony 0.6.3 during quite a long time. I woked up one morning and said to myself - hey you need to upgrade. So I wrote before about the way of warrior - how did I upgrade my symfony :-) And the next related question is - [One more note about Symfony installation](https://www.symfonylab.com/one-more-note-about-symfony-installation-2/) - Just got into weird trouble. I've installed symfony on server and I was assured it must work. Everything seems to be working, create a new symfony project, app, module, etc. I pointed httpdocs to web folder with ln -s command and then tried to take a look from browser on my domain: http://domain.com What did - [Re-Load](https://www.symfonylab.com/re-load/) - I'm sorry for such long delay but finally I came back for blogging. I have to say that I've been working with stable symfony-0.6.3 version for a long time and just now am joining to users of the latest symfony-1.0.1 Surely, symfony-1.0.1 is a gret step forward but what I've faced last days could be - [Upload image in admin generator](https://www.symfonylab.com/upload-image-in-admin-generator/) - Are you thinking of adding user photo to his profile or so. Admin generator allows very usefull feature which provides uploading/viewing of uploaded image. But you should be carefull. It's not the same for different Symfony versions. I had to browse through forum threads before I've found out correct answer. For instance, lets add this - [HAPPY BIRTHDAY SYMFONY!](https://www.symfonylab.com/happy-birthday-symfony/) - The Symfony framework turns one. Amidst all the back slapping, cake, and Champaign corks popping, the symfony blog posts a short happy birthday and a quick look over their shoulder. Francois Zaninotto, the documentation lead for the Symfony project, wrote the post on the blog. In it he discusses where it all started and goes - [The Simplest Log!](https://www.symfonylab.com/the-simplest-log/) - Hi, are you working on any serious system which perform financial transactions or maybe that's the system with multi-user permissions level? This or that way you should take care of logging information about actions which were performed by system users. There are a couple of ways you may use to implement system log. And of - [Do you enjoy..?](https://www.symfonylab.com/do-you-enjoy/) - Hey, Do you enjoy really good Symfony solutions? Of course, that's funny to implement something by yourself. There are always almost infinitive number of solutions for this or that issue. But some solutions make your proud for your work and some of them you wish to implement somehow simpler but don't know how to do - [Multilingual Backend](https://www.symfonylab.com/multilingual-backend/) - Hi, just a small but might be VERY helpfull tip for you. I bet you are using backend admin generator with Symfony. That's amazing tool which saves so much of your time. But have you ever develop multi-language application with so called I18N tables support? Yeah, Symfony (actually Propel) has built-in support of I18N tables - [Own Validators](https://www.symfonylab.com/own-validators/) - Hi Everyone, Just want to share with you some new information I found out. So everybody knows that symfony provides "validators" - yml-based files which simplifies life for developers. There are bunch of complete validator classes - e.g. correct email, unique record validation, etc. But what if you need to implement kinda "forgot password" functionality - [Admin Generator Tips And Tricks](https://www.symfonylab.com/admin-generator-tips-and-tricks/) - Ok, so lets talk about admin generator - usefull tool which Symfony provides for auto-creating interface according to the structure of the data used in the frontend application. Of course, you are welcome to?аread?аofficial?аSymfony manual here, e.g. here: http://www.symfony-project.com/book/trunk/generator But as it often comes - the real life is a real life and sometimes it ## Pages - [Home](https://www.symfonylab.com/) - Symfony is a complete framework designed to optimize the development of web applications by way of several key features. For starters, it separates a web application's business rules, server logic, and presentation views. It contains numerous tools and classes aimed at shortening the development time of a complex web application. Additionally, it automates common tasks - [Hide & Seek Chrome Extension](https://www.symfonylab.com/hide-seek-chrome-extension/) - SymfonyLab Unveils Innovative Browser Plugin for Seamless LinkedIn to CRM Profile Transfers November ’23 – SymfonyLab, a leading software development company specializing in bespoke solutions for SaaS providers, is excited to introduce its latest groundbreaking browser plugin, offering an advanced feature set to simplify CRM management. In response to the increasing demand for enhanced CRM - [Hide & Seek Privacy Policy](https://www.symfonylab.com/hideseek-privacy-policy/) - Effective Date: 1st Nov 2023 SymfonyLab ("we", "our", or "us") has developed Hide&Seek (the "Extension"). This Extension is designed to browser plugin that will let you keep your candidate profiles from LinkedIn pages up to date inside your eBoss CRM. It provides a convenient user interface to list all available candidates on the system and - [Contact](https://www.symfonylab.com/contact/) - Please feel free to contact with us using this form: - [Our Plugins](https://www.symfonylab.com/plugins/) - Here is the list of available plugins developed by us and contributed to Symfony repository: sfChartDirectorPlugin sfConstPlugin sfSettingsPlugin sfEmailPlugin sfCaptchaPlugin sfSupportPlugin sfEmailTemplatePlugin sfAdvancedConstPlugin sfLogPlugin It allows to log system and users activity into database table. At this moment plugin is available for downloading only from our site: download sfGalleryPlugin New not published plugins: sfExportPlugin will - [Interviews](https://www.symfonylab.com/interviews/) - [Reviews](https://www.symfonylab.com/reviews/) - sfUploadManagerPlugin - 1.0.1 The `sfUploadManagerPlugin` manage uploaded files in a database. Usefull with swfUpload or equivalent to be able to retrieve all file informations (original filename, size, mime type, uploaded date ...). http://www.symfony-project.org/plugins/sfUploadManagerPlugin ## Categories - [Uncategorized](https://www.symfonylab.com/category/uncategorized/) - [symfony](https://www.symfonylab.com/category/symfony/) - [miscellaneous](https://www.symfonylab.com/category/miscellaneous/) - [plugins](https://www.symfonylab.com/category/plugins/) - [doctrine](https://www.symfonylab.com/category/doctrine/) - [reviews](https://www.symfonylab.com/category/reviews/) - [newbie](https://www.symfonylab.com/category/newbie/) - [tv](https://www.symfonylab.com/category/tv/) - [symfony gurus](https://www.symfonylab.com/category/symfony-gurus/) - [interview](https://www.symfonylab.com/category/interview/) - [zend](https://www.symfonylab.com/category/zend/) - [symfony 5](https://www.symfonylab.com/category/symfony/symfony-5/) - [pattern](https://www.symfonylab.com/category/pattern/) ## Tags - [ajax](https://www.symfonylab.com/tag/ajax/) - [prototype](https://www.symfonylab.com/tag/prototype/) - [batch](https://www.symfonylab.com/tag/batch/) - [plugin](https://www.symfonylab.com/tag/plugin/) - [jpgraph](https://www.symfonylab.com/tag/jpgraph/) - [Swift mailer](https://www.symfonylab.com/tag/swift-mailer/) - [propel](https://www.symfonylab.com/tag/propel/) - [wforms](https://www.symfonylab.com/tag/wforms/) - [validation](https://www.symfonylab.com/tag/validation/) - [captcha](https://www.symfonylab.com/tag/captcha/) - [routing](https://www.symfonylab.com/tag/routing/) - [email](https://www.symfonylab.com/tag/email/) - [wapache](https://www.symfonylab.com/tag/wapache/) - [rapid](https://www.symfonylab.com/tag/rapid/) - [uml](https://www.symfonylab.com/tag/uml/) - [xml](https://www.symfonylab.com/tag/xml/) - [sfCaptcha](https://www.symfonylab.com/tag/sfcaptcha/) - [htaccess](https://www.symfonylab.com/tag/htaccess/) - [generator](https://www.symfonylab.com/tag/generator/) - [sfSupport](https://www.symfonylab.com/tag/sfsupport/) - [yml](https://www.symfonylab.com/tag/yml/) - [template](https://www.symfonylab.com/tag/template/) - [sfEmailTemplate](https://www.symfonylab.com/tag/sfemailtemplate/) - [google](https://www.symfonylab.com/tag/google/) - [peer](https://www.symfonylab.com/tag/peer/) - [sfAdvancedConst](https://www.symfonylab.com/tag/sfadvancedconst/) - [jobs](https://www.symfonylab.com/tag/jobs/) - [vacancy](https://www.symfonylab.com/tag/vacancy/) - [security](https://www.symfonylab.com/tag/security/) - [review](https://www.symfonylab.com/tag/review/) - [javascript](https://www.symfonylab.com/tag/javascript/) - [jquery](https://www.symfonylab.com/tag/jquery/) - [statistics](https://www.symfonylab.com/tag/statistics/) - [service](https://www.symfonylab.com/tag/service/) - [rss](https://www.symfonylab.com/tag/rss/) - [sfGuardPlugin](https://www.symfonylab.com/tag/sfguardplugin/) - [database](https://www.symfonylab.com/tag/database/) - [sql](https://www.symfonylab.com/tag/sql/) - [community](https://www.symfonylab.com/tag/community/) - [forum](https://www.symfonylab.com/tag/forum/) - [backend](https://www.symfonylab.com/tag/backend/) - [login](https://www.symfonylab.com/tag/login/) - [css](https://www.symfonylab.com/tag/css/) - [response](https://www.symfonylab.com/tag/response/) - [layout](https://www.symfonylab.com/tag/layout/) - [theme](https://www.symfonylab.com/tag/theme/) - [admin](https://www.symfonylab.com/tag/admin/) - [const](https://www.symfonylab.com/tag/const/) - [ria](https://www.symfonylab.com/tag/ria/) - [flex](https://www.symfonylab.com/tag/flex/) - [performance](https://www.symfonylab.com/tag/performance/) - [cache](https://www.symfonylab.com/tag/cache/) - [view](https://www.symfonylab.com/tag/view/) - [sfGallery](https://www.symfonylab.com/tag/sfgallery/) - [WYSIWYG](https://www.symfonylab.com/tag/wysiwyg/) - [seo](https://www.symfonylab.com/tag/seo/) - [symfony 1.2](https://www.symfonylab.com/tag/symfony-12/) - [symfony 1.3](https://www.symfonylab.com/tag/symfony-13/) - [symfony 2.0](https://www.symfonylab.com/tag/symfony-20/) - [open-source](https://www.symfonylab.com/tag/open-source/) - [conference](https://www.symfonylab.com/tag/conference/) - [lessons](https://www.symfonylab.com/tag/lessons/) - [askeet](https://www.symfonylab.com/tag/askeet/) - [jobeet](https://www.symfonylab.com/tag/jobeet/) - [bideet](https://www.symfonylab.com/tag/bideet/) - [UI](https://www.symfonylab.com/tag/ui/) - [slides](https://www.symfonylab.com/tag/slides/) - [ysymfony](https://www.symfonylab.com/tag/ysymfony/) - [subversion](https://www.symfonylab.com/tag/subversion/) - [sphinx](https://www.symfonylab.com/tag/sphinx/) - [search](https://www.symfonylab.com/tag/search/) - [video](https://www.symfonylab.com/tag/video/) - [symfony 2](https://www.symfonylab.com/tag/symfony-2/) - [scalability](https://www.symfonylab.com/tag/scalability/) - [cloud](https://www.symfonylab.com/tag/cloud/) - [diem](https://www.symfonylab.com/tag/diem/) - [sympal](https://www.symfonylab.com/tag/sympal/) - [doctrine 2](https://www.symfonylab.com/tag/doctrine-2/) - [cms](https://www.symfonylab.com/tag/cms/) - [symfony 1.4](https://www.symfonylab.com/tag/symfony-1-4/) - [symfony 1.0](https://www.symfonylab.com/tag/symfony-1-0/) - [symfony2](https://www.symfonylab.com/tag/symfony2/) - [phing](https://www.symfonylab.com/tag/phing/) - [ror](https://www.symfonylab.com/tag/ror/) - [django](https://www.symfonylab.com/tag/django/) - [play](https://www.symfonylab.com/tag/play/) - [mobile](https://www.symfonylab.com/tag/mobile/) - [gearman](https://www.symfonylab.com/tag/gearman/) - [or](https://www.symfonylab.com/tag/or/) - [rest](https://www.symfonylab.com/tag/rest/) - [form](https://www.symfonylab.com/tag/form/) - [lucene](https://www.symfonylab.com/tag/lucene/) - [sfemail](https://www.symfonylab.com/tag/sfemail/) - [plugins](https://www.symfonylab.com/tag/plugins/) - [doctrine](https://www.symfonylab.com/tag/doctrine/) - [newbie](https://www.symfonylab.com/tag/newbie/) - [tv](https://www.symfonylab.com/tag/tv/) - [interview](https://www.symfonylab.com/tag/interview/) - [zend](https://www.symfonylab.com/tag/zend/) - [symfony 5](https://www.symfonylab.com/tag/symfony-5/)