PHP Project Management API to Create MS Project MPP Files

Open Source PHP Library for Creating & Managing project (MPP) Data, such as Tasks, Resources, Calendars, Dependencies and much more.

PHPProject is an open-source library provided by PHPOffice, designed to facilitate the creation, manipulation, and management of Microsoft Project (.MPP) files using PHP API. For software developers working on PHP-based projects that require integration with Microsoft Project data, PHPProject provides a robust, feature-rich solution. The library makes it easy for software developers to create new Microsoft Project files from scratch with just a couple of lines of PHP code. This feature is especially useful for generating dynamic project plans within web applications. The library can be effortlessly integrated with your existing PHP applications and frameworks. It includes robust security features, such as authentication and authorization, to ensure data integrity and confidentiality.

PHPProjec is a PHP-based project management library that provides a robust framework for managing projects, tasks, and resources. It's designed to be flexible, scalable, and easy to integrate with various PHP applications. There are several important features part of the library, such as creating new project and managing tasks related to it, tracking existing projects, creating new tasks, assigning and tracking tasks, managing resources, customizing and extending existing functionality to suit your specific needs, Gantt charts generation, exporting project data to various formats like XML and JSON and so on. The library can be used across different platforms and environments, providing flexibility and ease of integration into diverse systems. By incorporating PHPProject into your development stack, you can automate project file creation, ensure data consistency, and streamline your workflow.

Previous Next

Getting Started with PHPProjec

The recommend way to install PHPProject is via Composer. Please use the following commands for a smooth installation.

Install PHPProject via NuGet

// add the following lines to your composer.json.
{
    "require": {
       "phpoffice/phpproject": "dev-master"
    }
}

You can download the directly from GitHub page

Better Project Management via PHP Library

The open source PHPProject library allows software developers to create applications that can easily create and manage projects without any external dependencies. Define project properties such as the project name, start date, and working calendars. Handle tasks, set milestones, and track progress efficiently. The library also allows you to manage tasks with ease. The following example demonstrates, how software developers can create project inside PHP applications.

How to Create a Project inside PHP Applications?

require_once 'path/to/PhpProject.php';

$project = new \PhpProject\Project();
$project->setTitle('My Project');
$project->setDescription('This is my project description');
$project->save();

Advanced Task Management via PHP

The open source PHPProject library makes it easy for software developers to create and manage tasks inside their PHP applications. The library supports defining and managing tasks with detailed properties, including start and end dates, assigned resources, and task dependencies. Establish relationships between tasks using various dependency types like Finish-to-Start (FS), Start-to-Start (SS), and more. The following example shows, how software developers can create a tasks inside an existing projects using PHP commands.

How to Create a Tasks inside a Projects via PHP?

require_once 'path/to/PhpProject.php';

$task = new \PhpProject\Task();
$task->setTitle('My Task');
$task->setDescription('This is my task description');
$task->setProjectId(1); // Assign the task to the project with ID 1
$task->save();

Resource Allocation & Custom Calendars

The open source PHPProject library allows software developers to assign new resources and manage allocated resources to your project via PHP library. This includes defining resources such as personnel, equipment, or materials, and assigning these resources to specific tasks. Manage resource availability, and track their utilization across different tasks within the project. Moreover, developers can easily define custom calendars to manage working days, holidays, and specific time rules. These calendars can be assigned to the entire project or individual resources, ensuring accurate scheduling. The following example shows how to allocate resources to a project task inside PHP applications.

How to Allocate Resources to a Project Task inside PHP Apps?

require_once 'path/to/PhpProject.php';

$resource = new \PhpProject\Resource();
$resource->setUsername('john.doe');
$resource->setEmail('john.doe@example.com');
$resource->save();

$task = new \PhpProject\Task();
$task->setId(1); // Assign the task with ID 1
$task->assignResource($resource->getId());