Categories

Tags

Page 22 of All Articles

How to use Generators in PHP

Support for generators (via the yield keyword) has been added to PHP 5.5 and allows you to create simple iterators without the use of the Iterator interface. What’s this all mean? It boils down to overhead, generators use less memory than an implementation of the Iterator interface or simply creating […]

Warning: Network TCP port is being used by /usr/sbin/php5-fpm. Possible rootkit

Imagine my surprise to see this warning during my morning review of the rootkit checkers that run nightly on my boxes. The thing is, there were no other anomalies on the box aside from /usr/sbin/php5-fpm being bound to a port that was suspected of belonging to a rootkit. The fact […]

String dereferencing or How to extract a single character from a string with PHP

String dereferencing allows you direct access to individual characters. The dereferencing syntax is just like accessing an array element by it’s index: $string = 'This is my awesome string!'; echo 'First Character: ' . $string[0] . "\n"; echo 'Tenth Character: ' . $string[9] . "\n"; echo 'Last Character: ' . […]

Easily identify duplicate properties in your CSS files

As of late I’ve been very adamant about DRY CSS principles. Not so much the descriptive ID and class selectors that some folks wrap their other selectors in, but the focus on not repeating the properties and grouping like selectors. I’ve even taken it a step further and have been […]

Catching multiple PHP exceptions

I had previously discussed using try / catch / finally and a fine reader pointed out that I didn’t mention catching multiple exceptions. He’s right, I dropped the ball and decided to dedicate today’s post to catching multiple exceptions. To catch multiple exceptions you will need to be using code […]

Co-founder Application

This is partially for LOLz and partially for serious. I’m a guy in Tampa looking for people that want to kick ass with me. I know some very talented individuals in the area but nothing’s really gotten off the ground with them. Most of that is because they have day […]

How to write files to disk with PHP

Saving files to disk is a pretty simple task in PHP with file_put_contents(). Here’s how to write a string to a file: $string = 'I AM STRING!!'; file_put_contents('/path/to/destination', $string); It is generally good practice to only do with when you are dealing with smaller strings as you can run into […]

Command line all the things!

The start of 2014 has been an exercise in going back to basics for me. I’ve been re-evaluating my workflows when hacking and attempting to streamline as much as humanly possible. This has resulted in a ton of new aliases in an attempt to get my common CLI commands down […]

How to use try/catch statements in PHP. Oh, and finally too!

I do a lot of coding in Python and one thing that I really love is the mindset of asking for forgiveness instead of permission. What’s this mean? It means that instead of sanity checking every little thing, just handling the exceptions that are thrown instead. In PHP this can […]

Gravatar as an identicon generation service

If you’re not already aware, Gravatar is a free service that allows you to couple an image to your email address which can then be carried around the Internet with you. It’s great for site owners because then you don’t have to build out image uploading and storage and it’s […]

Your stack is outdated

I’ve been noticing a pattern with most of my peers (yes I said most), they expect their users to be running the latest and greatest version of their favorite “modern” browser and all the while their server stack is collecting dust. Ubuntu doesn’t help matters with their Long Term Service […]

How to use switch/case statements in PHP

switch/case statements are one of my favorite anti-patterns not because I prefer to write spaghetti code but because they can make if/elseif blocks look a ton cleaner. Why would it be considered an anti-pattern? Because it could easily be abused to the point that you are munging up your control […]

Improve performance by reusing PHP objects

I’ve been doing a ton of optimizations on one of my main sites and one thing that I’ve been doing more and more is trying to reuse objects whenever possible. What’s this entail? All it takes is creating a static function to return an instance of the object instead of […]

How I saw the test-driven light

Aside from dealing with financial transactions, I’ve generally avoided test-driven development as part of my day to day workflow. Why? The usual reasons, but mostly because I didn’t want to incur the overhead of additional development. As a single founder / developer you’re always looking for ways to lighten the […]

PHP 5.5 syntax highlighting for Vim

Now that I’m using PHP 5.5 I’m finding that my Vim syntax highlighting is a bit off. After some digging around I found a syntax file that was updated to PHP 5.5 RC1 but hasn’t been updated since. In true hacker fashion I went ahead and forked the project and […]

Upgrade from PHP 5.3 to PHP 5.5 on Ubuntu 12.04 LTS

Recently I made the decision to stop living in the past and start living in the present by using the latest stable release of PHP, version 5.5.8. Unfortunately on Ubuntu 12.04 LTS (I always run LTS releases on my servers) the latest version of PHP available is from the 5.3 […]

Domains are worthless without traffic

If you know anything about my growth strategy for my social network, it’s that I’m expanding my platform horizontally across multiple domains and allowing each site to grow organically. This has led me down the road of being one of those guys that owns a ton of domains but has […]

PHP segmentation faulting from logging too much

At least I think that’s what was happening. Today I made the somewhat calculated risk of upgrading my production server from PHP 5.3.10 to PHP 5.5.7. Scary stuff, jumping 2 point revisions like that but I was feeling cocky after jumping 3 point revisions to bring nginx up to the […]

Lessons learned from sending thank you cards to my users

I wanted to do something nice this holiday season and decided to identify some of my power users on SceneKids.com and mail them Christmas cards and some SK stickers. The users I had selected were a mix of users that have been on the site since it launched in 2011 […]

Getting PHP's version from the command-line

As you may already know, obtaining the version number of PHP is a simple php --version away. This is great if you just want to see the version number, but what if you wanted just the version number? First option would be to use write out some shell script to […]

That time I got ripped off on Flippa

In my defense, I’m a grown ass man and I knew exactly what I was doing. I was really intrigued by all of the “automated websites” that Flippa is overrun with and figured I’d set myself a very modest budget of 250$ and see what trouble I could get myself […]

How to error when setting undefined class properties in PHP

Perhaps you have a class and you absolutely don’t want anyone tacking new properties onto it once it’s been instantiated. To do so, you can use PHP’s overloading to catch the setting of a variable and raise an error accordingly. Here is the default behavior where an object can have […]

Bake your fees in, don’t line item them

As a business owner, I understand that there are fees associated with running a business. There’s always a cost to doing business and those costs can generally be written off at the end of the year. Those costs are yours and in my opinion don’t always need to be revealed […]

What transferring a domain to a new registrar entails

With my recent trials and tribulations with DirectNIC and my now exodus to NameSilo I’ve been asked a couple of times of how difficult a domain transfer is and what it entails. Before I discuss the steps to transfer a domain, I’d like to note that I will be posting […]

How to set up a LAMP server on Ubuntu 13.10

Been a while since I’ve covered setting up a brand new LAMP server. This time, I’m going to be using Ubuntu 13.10 and once you are logged into your server you will want to update and upgrade it to the latest software versions: sudo apt-get update && apt-get upgrade Once […]