I develop primarily on Linux and wrote class_dicom.php with Linux in mind. This tutorial will be geared towards CentOS or Fedora as that is what I use on a day to day basis. I’ll try to include notes for Ubuntu/Debian when possible.
I’m going to assume you have at minimum, Linux installed on a PC and you can access the command line as root.
1. Let’s get your environment ready
We’re going to install all of the needed development tools, a web server, and MySQL. A web server and MySQL is not needed by class_dicom.php, but since most folks are going to want to use PHP from a web server, we might as well get it installed.
yum -y groupinstall "Web Server" 'Development Tools' "MySQL Database" yum -y install wget php php-gd ImageMagick libjpeg zlib libpng libtiff libxml2 libpng-devel zlib-devel libjpeg-devel libtiff-devel libxml-devel libxml2-devel libwrap-devel libpng10-devel php-mysql
sudo apt-get install lamp-server^ sudo apt-get install build-essential wget ImageMagick libjpeg zlib libpng libtiff libxml2 libpng-devel zlib-devel libjpeg-devel libtiff-devel libxml-devel libxml2-devel libwrap-devel libpng10-devel
All of the above will probably take a while to finish out. Note that the ^ in the Ubuntu command is not a typo and needs to be present.
2. Build and install DCMTK
DCMTK is what class_dicom.php uses to actually work with DICOM files. Among many other things, it is a collect of command line tools for working with DICOM files.
The process of building and installing is essentially the same between versions of Linux.
wget ftp://dicom.offis.de/pub/dicom/offis/software/dcmtk/dcmtk360/dcmtk-3.6.0.tar.gz tar zxvf dcmtk-3.6.0.tar.gz cd dcmtk-3.6.0 ./configure;make;make install
Depending on your computer, the DCMTK can take a long time to build.
3. Install class_dicom.php
Download a copy:
wget --no-check-certificate http://github.com/vedicveko/class_dicom.php/zipball/master unzip master mv vedicveko-class_dicom.php* class_dicom_php
and…. you’re done.
Lets make sure it works!
cd class_dicom_php/examples ./get_tags.php dean.dcm
You should see a header dump of dean.dcm printed to the screen.