Thanks in advance!
Your PHP programming environment
Moderator: General Moderators
Your PHP programming environment
I was just curious what you advanced PHP programmers use / do when you program PHP. Currently I program in MS notepad and upload the file by dragging it into the online folder via WS_FTP. Now this isn't a horrible system, since I have a two monitor setup and I don't lose too much time doing this, but I know that much better setups / programs exist for doing this. So yah I wanted to know what some of you guys use in terms of ur PHP editor and how you upload it to the server. Also how you manage multiple scripts belonging to multiple directors, and the like!
Thanks in advance!

Thanks in advance!
- Heavy
- Forum Contributor
- Posts: 478
- Joined: Sun Sep 22, 2002 7:36 am
- Location: Viksjöfors, Hälsingland, Sweden
- Contact:
There already are large threads on the editor subject, but I guess you asked for more than that. here we go:
I do all the development in Zend Studio on windows connected to a samba folder on my linux box. When I have finished my work on a specific thing, I use CVS to commit my changes into the repository. When I feel lucky enough to release something, I tag it with a release number and login to the web-server on the Internet and do a cvs checkout on that new release so that it gets installed on the Internet.
I use putty for making secure shell connections to my linux boxes.
I have another linux box that make backups of the running internet server with these things backed up:
* cvs repository
* system settings
* mysql database
* some other files
These things are transferred between the internet server and the backup server using rsync tunneled with ssh.
These backup tasks are scheduled with cron to run once every day, only transferring what has been changed since last backup.
EDIT:
And all backup files are rotated, so that I have full backups for a week back in time:
db-weekday0.sql.bz2
db-weekday1.sql.bz2
db-weekday2.sql.bz2
db-weekday3.sql.bz2
db-weekday4.sql.bz2
db-weekday5.sql.bz2
db-weekday6.sql.bz2
db-weekday7.sql.bz2
I do all the development in Zend Studio on windows connected to a samba folder on my linux box. When I have finished my work on a specific thing, I use CVS to commit my changes into the repository. When I feel lucky enough to release something, I tag it with a release number and login to the web-server on the Internet and do a cvs checkout on that new release so that it gets installed on the Internet.
I use putty for making secure shell connections to my linux boxes.
I have another linux box that make backups of the running internet server with these things backed up:
* cvs repository
* system settings
* mysql database
* some other files
These things are transferred between the internet server and the backup server using rsync tunneled with ssh.
These backup tasks are scheduled with cron to run once every day, only transferring what has been changed since last backup.
EDIT:
And all backup files are rotated, so that I have full backups for a week back in time:
db-weekday0.sql.bz2
db-weekday1.sql.bz2
db-weekday2.sql.bz2
db-weekday3.sql.bz2
db-weekday4.sql.bz2
db-weekday5.sql.bz2
db-weekday6.sql.bz2
db-weekday7.sql.bz2
quanta on KDE3, editing directly off of a "test" version of my webroot, which is rotated into position every morning at 6.
Severly O/T: Why does SSH crash so damn often? I mean, honestly. Whether I use "ssh" as a client, or Putty, or anything, it just seems to unstable, and it gets annoying if you haven't saved your changes (in pico, vi, what have you). Are there any settings for latency/buffering? I'm on the same lan as the SSH daemon, so there's no excuse there.
Severly O/T: Why does SSH crash so damn often? I mean, honestly. Whether I use "ssh" as a client, or Putty, or anything, it just seems to unstable, and it gets annoying if you haven't saved your changes (in pico, vi, what have you). Are there any settings for latency/buffering? I'm on the same lan as the SSH daemon, so there's no excuse there.
- Heavy
- Forum Contributor
- Posts: 478
- Joined: Sun Sep 22, 2002 7:36 am
- Location: Viksjöfors, Hälsingland, Sweden
- Contact:
I use Debian Linux 3.0 r1 with OpenSSH 3.4p1-1. I haven't experienced any ssh crash since installation in february. Is has disconnected some times, but that is because the ISDN connection shuts down after one minute with no activity. As long as I keep it open, no problems. Or on my other systems, wich I access through LAN just like you do. No crashes...qartis wrote:Severly O/T: Why does SSH crash so damn often?
I work under Win2k with IIS, PHP, mySQL and PostgreSQL being installed. I use Dreamweaver MX and it's site management system, PHP syntax highlight and helper. So I fully debug my site on localhost, then transfer it via network to SunOS Apache university server, where site should live. So in final I am aware that site is portable.
Hi.
The environment starts with good people to work with
. After that a white board is essential, index cards are nice and I have a 21" flat screen Sony Trinny monitor which is nicer.
Roll outs are controlled through a script that does a CVS export, but we are moving over to an RPM based system. A rollout is impossible without all of the tests passing as a failure triggers a roll back. This degree of automation allows you the freedom to code quick fixes whilst always keeping a safety net. As top priority I would address deployment and source control and I usually do this at the start of a project.
We develop in iterations and measure our performance XP style. Once you have control of your code, definitely look at process. I can recommend XP (extreme programming) highly, but a light weight RUP (Rational Unified Process) system would work too I am sure.
All of our workstations are quite beefy in memory and disk space so that every development machine can run a copy of the entire application. This allows constant testing (TDD or test driven development) and an additional test machine is kept that can be completely reinstalled from a script. This means that we can get this machine to a clean state again in under an hour.
Here is a quick list of software tools that we use...
CVS for version control (will look at SubVersion soon).
Komodo for editing (looking again at Eclipse)
Dia for UML.
SimpleTest for unit testing (I'm biased of course).
Xalan for XSLT processing (it has clearer error messages).
A Wiki for project knowledge will be set up soon.
Looking at Humming Bird for document control.
We use both Linux and Windows (me Linux) for development and Linux for deployment.
And no we are not a large code shop. There are three of us and I am the only full time developer.
yours, Marcus
The environment starts with good people to work with
Roll outs are controlled through a script that does a CVS export, but we are moving over to an RPM based system. A rollout is impossible without all of the tests passing as a failure triggers a roll back. This degree of automation allows you the freedom to code quick fixes whilst always keeping a safety net. As top priority I would address deployment and source control and I usually do this at the start of a project.
We develop in iterations and measure our performance XP style. Once you have control of your code, definitely look at process. I can recommend XP (extreme programming) highly, but a light weight RUP (Rational Unified Process) system would work too I am sure.
All of our workstations are quite beefy in memory and disk space so that every development machine can run a copy of the entire application. This allows constant testing (TDD or test driven development) and an additional test machine is kept that can be completely reinstalled from a script. This means that we can get this machine to a clean state again in under an hour.
Here is a quick list of software tools that we use...
CVS for version control (will look at SubVersion soon).
Komodo for editing (looking again at Eclipse)
Dia for UML.
SimpleTest for unit testing (I'm biased of course).
Xalan for XSLT processing (it has clearer error messages).
A Wiki for project knowledge will be set up soon.
Looking at Humming Bird for document control.
We use both Linux and Windows (me Linux) for development and Linux for deployment.
And no we are not a large code shop. There are three of us and I am the only full time developer.
yours, Marcus
My environment includes:
Dreamweaver MX, Code Library (various PHP, JScript, SQL snipplets in an offline folder), Offline PHP Manual w/ user notes, SlimBrowser for multitab'in between different sites and my phpMyAdmin tool, & Aqua Data Studio.
OS of choice: Windows XP Professional
Development Server Details: Apache v1.3.23, PHP v4.1.1, MySQL v3.23.48 (basically PHPTriad v2.2)

Dreamweaver MX, Code Library (various PHP, JScript, SQL snipplets in an offline folder), Offline PHP Manual w/ user notes, SlimBrowser for multitab'in between different sites and my phpMyAdmin tool, & Aqua Data Studio.
OS of choice: Windows XP Professional
Development Server Details: Apache v1.3.23, PHP v4.1.1, MySQL v3.23.48 (basically PHPTriad v2.2)
i use 2 apachies (every with it's own samba share) on one machine. one is visible only from inside my net other from everywhere on the net.
thanks to this i can have a test server on which i test new apache, php, mysql (and all what's related) versions.
if everything works fine i copy files from one samba share to other and presto.
tool i use for writing code is simple html editor: AceHTML. it's free, fast and i like it (it has some minor bugs, but i can live with them). In fact i only need editor that highlights code, count rows and allow me to perform some advenced replace operations over multiple files.
penny
thanks to this i can have a test server on which i test new apache, php, mysql (and all what's related) versions.
if everything works fine i copy files from one samba share to other and presto.
tool i use for writing code is simple html editor: AceHTML. it's free, fast and i like it (it has some minor bugs, but i can live with them). In fact i only need editor that highlights code, count rows and allow me to perform some advenced replace operations over multiple files.
penny
I use HotDog Pro as my editor, although I'm testing Zend Studio, and that looks very promising too...
I develop with/on W2K, IIS, a custom Apache, Cygwin, MySQL 3/4, Postgresql (through cygwin), and PHP 4/5.
I mainly use cvs for my versioning stuff, develop and test everything local, and deploy remote to mainly unix'es through ws_ftp or (preferably) ssh/scp
And I've got some custom batch files / shell scripts that do a lot of common tasks for me...
Sjon
I develop with/on W2K, IIS, a custom Apache, Cygwin, MySQL 3/4, Postgresql (through cygwin), and PHP 4/5.
I mainly use cvs for my versioning stuff, develop and test everything local, and deploy remote to mainly unix'es through ws_ftp or (preferably) ssh/scp
And I've got some custom batch files / shell scripts that do a lot of common tasks for me...
Sjon
- Derfel Cadarn
- Forum Contributor
- Posts: 193
- Joined: Thu Jul 17, 2003 12:02 pm
- Location: Berlin, Germany
My favorit PHP-Editor
My PHP and MySQL-editor is the same as my HTML-editor: Arachniphilia. It's written in java, uses great tag-coloring ans is extremely flexible: I've made my own macro's for generating PHP and MySQL-tags.
And, since I've got a 'dual' system, I've installed in both the Win and the Linux-environment. In both environments, Arachnophilia looks and works exactly the same, of course.
Next I've made an Apache-server (with PHP and MySQL) in both environments, so I can code on my PC and, after succesfully testing it, upload the whole shebang!!
Check out at: http://www.arachnoid.com , it's free (Careware)!
Ad
P.S. At the moment I'm playing around a bit with Eclips, but that looks a bit overdone and too complicated for the job..
And, since I've got a 'dual' system, I've installed in both the Win and the Linux-environment. In both environments, Arachnophilia looks and works exactly the same, of course.
Next I've made an Apache-server (with PHP and MySQL) in both environments, so I can code on my PC and, after succesfully testing it, upload the whole shebang!!
Check out at: http://www.arachnoid.com , it's free (Careware)!
Ad
P.S. At the moment I'm playing around a bit with Eclips, but that looks a bit overdone and too complicated for the job..