PHP Framework Question! Zend, CakePHP, Symfony, CodeIgniter. Finally I get to ask something.
-
Hey ya'll! We are looking to re-build our backoffice website. It's a dynamically generated site that pulls information from a DB. The DB is populated by the quote form. The DB contains the customers' info, shipping, email templates, and everything to process orders. The backoffice website is custom made in JAVA, but the owner is not happy with the programmer. I told the owner we may want to go to a PHP Framework.
My question is which PHP framework would you recommend and why?
Zend
CakePHP
Symfony
CodeIgniter
-
Hey Highland. Thanks for taking the time to answer. I use Magento all the time. I remember how slow it was in 2008 when I 1st started using it.
I value your comment "The key to our simplicity is copious documentation (inside and outside the code)." I think this is the main problem we had run into before and my fear is that the current programmer is the only one who understands his own work. We trust the guy with all the information, but he's so slow at getting things done that I sometimes want to get him some assistance. But that new person may have to decipher everything.
I have taken some courses in PHP, but I don't code because I'm the one bringing in all the money to the company via internet. I don't have the time to code, although I would love to do it myself.
"Life is too short for Java." LOL
-
I attended a PHP conference a couple of years ago, where Rasmus Lerdorf (the guy who created PHP originally) decried all frameworks as explicative (and this conference had CakeDC, a major Cake PHP dev house, as a sponsor). While I don't fully agree with the sentiment (frameworks aren't completely worthless), you also have to understand that you're adding an intermediate layer to your codebase having one. Sometimes it simplifies things, sometimes it makes them more complex.
Zend Framework 1, for instance, was notoriously slow (a fact even the guy at Zend, who wrote most of it, agreed with). Magento built their early platform on this and it dragged horribly. I was also unimpressed with how well ZF code flowed. While it did MVC well, it was like having to relearn how to code (and I had been doing PHP for over 3 years at this point). I understood why they were doing things that way but they abstracted everything to the point where I couldn't keep track of my program flow anymore (it's bad when your stack trace, the list of everything that lead up to an error, is 50 lines long). I have not tried ZF2 but I have heard it is significantly faster (it uses namespaces and auto-includes instead of a million default includes). Still, I don't think it's easier or better.
What we do is we write our own backend and use Smarty for the frontend. It takes a little longer up front but it's written using standard objects and we have much better control. The key to our simplicity is copious documentation (inside and outside the code). Someone coming into our company would only need to know PHP to work in it, as opposed to knowing PHP + something else. Remember, someone will have to maintain this stuff for you and you don't want to pigeon-hole yourself into some framework few people know.
As an aside, they were selling T-Shirts at this conference that said "Life is too short for Java." I do agree 100% with that statement. It's a good move to ditch Java for PHP.
-
Hey Jack, thanks for that link and your answer. I was already looking into CodeIgniter. One of the coders I use prefers CodeIgniter.
The system is going to have people's SSN, Passport information, and things like that. So I have to be careful who I select to do the project.
Also, I see you're new to SEOmoz. Welcome!
-
Yeah very good point!
I was just wondering because I'm still in the learning stage of PHP I can see how quickly the code can get out of control!
I think SEOmoz use CakePHP when I was nosing at their jobs page. A lot of people reccommend CodeIgniter on StackExchange as well, so I might check that out.
I better start learning to use one of these then. Can I ask you to let me know which one you go for please?
-
I don't see why we shouldn't. The last program we had was in PHP. It worked, but the code could only be understood by the developer. It was so customized and there were patches everywhere to make things work. When I wanted somethings done, these tasks were too hard too implement or were going to take too long.
I want to use a framework to be able to scale our backoffice. I am bringing in more qualified traffic to the company every month and they will need to hire more people. I personally don't want the company to hire more people. I want them to invest in a system that can make their process more efficient and save the money by not hiring people.
-
Do you think it's essential to use a Framework when building a system like this?
-
I think the answer would depend mostly upon the individual who will actually be doing the actual programming and their comfort level with a particular framework. While each of these PHP Frameworks will get the job done, the question is how efficiently will it execute the job of getting information to the screen. Here's a bit more to look at : http://wiki.fluidproject.org/display/fluid/Framework+Comparison+-++CakePHP+vs.+Zend+Framework+(ZF)+vs.+CodeIgniter
My personal preference is CodeIgniter - it tends to be a lighter weight framework that allows you to create cleaner more efficient pages that load more quickly than some other frameworks. CodeIgniter allows you to add particular Zend libraries to it to add functionality when needed.
To keep page load times fast, most skilled programmers in any of these frameworks can remove unused functions and includes on a page to make it execute just as clean as CodeIgniter. I think it's truly a case of what your best available coder is comfortable using.
Mike Monahan
JM Field Marketing
Got a burning SEO question?
Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
To delete or not? That is the question..
In the case of an eCommerce store with a large catalogue of branded goods the inventory is constantly being adjusted as products become discontinued. Each year most fashion brands have 2 or 3 launches. At this same time they will delete some (not all) of previous years collections. Once we have sold through the remaining inventory of last season's products the question is how to proceed? a) delete products to avoid customers landing on page, then only to be disappointed when product is no longer available to purchase.. b) keep products however mark as discontinued / no longer available and show a link to a similar product if applicable.. I am coming around to the opinion that b) provides a better user experience. However will this growing catalogue of old products (pushed to bottom of category page) help keep content of site full and have SEO advantages? If this is the case then that helps confirm b) as best choice??
Web Design | | seanmccauley0 -
Can someone please help with technical question!
I have noticed that our website tool to get a quote does not work with active scripting disabled is this bad? How many people have this disabled?
Web Design | | BobAnderson0 -
Booking Engine SEO Question
Hello, I am working on a travel site-mostly content based, but for the deals section of the site, we were thinking of being powered by expedia...if we go with a booking engine (Expedia) will that hurt us with regards to SEO? If Google is looking for content and not another booking engine how can we overcome this? Do you think this approach is positive? any thoughts or advice on this, thanks so much.
Web Design | | lanigreg0 -
Keywords in url - specific case question
There are a bunch of questions about keywords in the url and so far what I've gathered is that it's good to have them but keep it simple so it doesn't look stuffed. I'm working on redesigning some sites that were originally setup by a group who had no understanding of SEO (or perhaps I should say a misunderstanding) and spent a lot of time stuffing keywords EVERYWHERE. In some cases they weren't too far off but in others I think they just went overboard. One of the areas I'm trying to fix are the paths which leads to the following concerns. One of the sites has a basketball section and through the use of the Adwords keyword tool they determined that most people are searching for "basketball hoops". My first question is, how reliable are the monthly search numbers in the Adwords keyword tool? Are they accurate enough to warrant forming keyword strategies based on the results? As it relates to the url issue, the current tree for the basketball section of the site looks like this: /basketball (the landing page for the whole section, there are other sport specific pages as well) /basketball/hoops (goes nowhere. not sure why they didn't just go to /basketball-hoops/x for other pages) /basketball/hoops/72in-backboards (the systems are split into three different backboard sizes, these pages group them onto one overview page per size) /basketball/hoops/72in-backboards/specific-basketball-goal (the actual basketball goal details page with options to buy and such) So what I'm wondering about this setup is: does having /basketball/hoops take care of having the "basketball hoops" search term or would it be more effective to switch to /basketball-hoops? If it's fine to leave it at /basketball/hoops, do you think it would be beneficial to create an actual page for that path? We found that actually more people search for "basketball basket" than "basketball hoops" so maybe that would be a good page to try to make use of that term and explain maybe why people think "basket" instead of "hoop" and why we call ours "goals" or something. I tend to navigate pages by deleting path arguments and I hate when I land on a nonexistent path so I'm leaning toward changing the paths but just don't know if it's worth it at this point. Additionally, on one of the other sites, we have a domain that is the main keyword we want to rank for: swingsets.com The other company I mentioned then decided to put all of the product pages under: swingsets.com/swing-sets/{category}/{set-height}-{'swing-set'|'playset'|'swingsets'|'play-set'|etc...}/combo{#} So that comes out to look something like this: swingsets.com/swing-sets/outback/5ft-playsets/combo2 I've never liked that path setup. It looks stuffed to me, especially once they start using '5ft-swing-sets' and '6ft-play-set' on other product pages. It's inconsistent which is another issue I have since I tend to surf by path. Another issue with that setup is the final argument of combo{#} but there's nothing I can really do about that because they call the products out as combinations. The only actual product name is the "outback" part. I've been trying to come up with a better path setup for a long time now but again I'm concerned that I may just be wasting my time. The only thing I did do was make the height section consistently {height}-playsets. Is that good enough or should these paths remove /swing-sets from the beginning? The actual /swing-sets page is a good and valuable landing page but then I'm not sure if it remains valuable to keep it in the paths for the product pages afterward. Any insight into this dilemma would be appreciated. I've been stewing over this for a long time and my reasoning always becomes circular since I can see plenty of reasons for keeping them the way they are and simplifying them.
Web Design | | EscaladeSports0 -
How to change the entire contents and design in my site without getting troubles with google?
Hello everyone This is my first post over here. In the next few weeks we going to change the entire content and design in our site. The site has 240 pages with poor contents and design. Except 301 redirects for all the old url’s I wanted to consult with you what is the right way to do it without harm my organic traffic that come from google? How google refers to this kind of changes? Which steps should I need to take to do it properly? Hope to get your help in the issue. Tahnks in advance.
Web Design | | JonsonSwartz0 -
Is it worth upgrading php to accomodate new WP version?
my client revisitors.com has a blog blog.revisitors.com that we cannot update to a newer WP version 3.5.1 because his php version apparently must be upgraded first. You cannot update because WordPress 3.5.1 requires PHP version 5.2.4 or higher. You are running version 5.1.6. according to client it would be potentially hazarardous for him to upgrade the php but we cant update or add new plugins because we arent running the current version of WP what is worse? i am responsible for his blog but i feel handicapped bigtime - at the same time i dont want him to do something that could wreck his site functionality either any suggestions? or advice here? thanks
Web Design | | Ezpro90 -
Rephrasing my question: I have no search traffic -- I would love some feedback
I just posted a question: http://www.seomoz.org/q/am-i-on-the-right-track-still-not-seeing-results-in-rank-traffic-etc An it already has 63 views and one response, but I think I may have phrased the question wrong. I would love a little feedback on my site - I have zero search traffic -- none. I find that odd. I am not sure if it "just takes time" and I need to be patient, or if I am doing something really obviously wrong. I have been really amazed by what I have read so far in this community, and have learned a ton. In my previous question, I listed all the things I am doing -- and I think I have the basics down pat. Should I not have at least 1 visitor per day? Any feedback would be appreciated. Thank you so much!!
Web Design | | WendyKKelly0 -
This is not a question but a comment
My website www.kids-iq-tests.com is mainly focused on articles; however, I have noticed that after adding a few images of celebrities, I have gained a lot of traffic from image searches from Google. My point is that by adding images of popular celebrities to an article, you can gain a substantial amount of traffic. give it a try and see if you can gain traffic from image searches.
Web Design | | dougster620