Free PHP PM API to Build Custom Project Management Apps

Open Source PHP Project Management Library That Empowers Software Developers to Build Custom Project Management Apps & Help Teams to Collaborate, Track Tasks, and Manage Resources Efficiently

Какво е библиотеката Web2Project?

В света на софтуерната разработка управлението на проекти е повече от модно слово – то е гръбнакът на успешното, навременно и ефективно доставяне на софтуер. Независимо дали сте фрийлансър, който управлява няколко клиента, или ръководител на екип, който координира разпределен екип от разработчици, правилните инструменти могат да направят цялата разлика. Тук идва Web2Project – отворена система за управление на проекти, създадена с мисъл за разработчиците. Библиотеката предоставя широк набор от функции, включително управление на задачи и проекти, следене на време, разпределение на ресурси, управление на файлове и документи, модулна архитектура и др. Потребителите могат да използват предварително изградени компоненти, за да ускорят разработката на приложения за управление на проекти.

Web2Project е мощна отворена система за управление на проекти, създадена да помага на екипите да сътрудничат, следят задачи и ефективно управляват ресурси. Създадена като наследник на dotProject, Web2Project предлага гъвкава и модулна архитектура, което я прави отличен избор за разработчици, които искат да създават персонализирани приложения за управление на проекти или да интегрират проследяване на проекти в съществуващите си системи. Библиотеката също така поддържа модифициране на ядрото или добавяне на нови модули, за да отговарят на специфични бизнес нужди с лекота. Отворените библиотеки обикновено са безплатни за използване, което намалява разходите за разработка. Нейният модулен дизайн, поддръжка на API и активна общност я правят силен избор за бизнеси и разработчици, търсещи гъвкаво решение за управление на проекти.

Previous Next

Започване с Web2Project

Препоръчителният начин за инсталиране на Web2Project е чрез Composer. Моля, използвайте следните команди за гладка инсталация.

Install Web2Project via Composer

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

Install Web2Project via GitHub

git clone https://github.com/web2project/web2project.git 

You can download the directly from страница в GitHub

Контрол на достъпа, базиран на роли

Отворената библиотека Web2Project предлага фино настройване на потребителски и ролеви разрешения чрез ACL (списъци за контрол на достъпа). Всеки потребител има специфични роли, а всеки модул или функция могат да бъдат ограничени с нива на разрешения (преглед, редактиране, изтриване и др.). Това гарантира, че само упълномощени потребители могат да преглеждат или манипулират данни – идеално за многопотребителски приложения или системи, базирани на екипи.

How to Check User Permissions in Your Module via PHP Library

global $AppUI;

if (!$perms->checkModuleItem('my_module', 'view', $my_module_id)) {
    $AppUI->redirect('m=public&a=access_denied');
}

Управление на задачи и проекти чрез PHP API

Отворената библиотека Web2Project включва мощна поддръжка за създаване и управление на задачи и проекти в PHP приложения. Библиотеката поддържа система за управление на задачи с оценки на време, зависимости, процент завършеност и Гант диаграми, програмирано в PHP приложения. Ето прост пример, който показва как разработчиците могат да създадат задача и как да извлекат и покажат съществуващи задачи в модул чрез PHP команди.

How to Create a Task or Display Existing Tasks inside PHP Apps?

$task = new CTask();
$task->task_project = $project_id;
$task->task_name = 'Initial Planning';
$task->task_start_date = '2025-04-15 08:00:00';
$task->task_end_date = '2025-04-20 17:00:00';
$task->task_duration_type = 1; // days
$task->task_owner = $AppUI->user_id;
$task->store();
// Display Tasks

$q = new w2p_Database_Query();
$q->addTable('tasks');
$q->addQuery('*');
$q->addWhere('task_project = ' . (int)$project_id);
$tasks = $q->loadList();

Генериране на отчети чрез Reporting Engine

Отворената библиотека Web2Project поддържа вградени и персонализирани отчети чрез модули в PHP приложения. Разработчиците могат да създават CSV, PDF или уеб отчети директно от заявки към базата данни с няколко реда код. Този тип експортна функционалност е полезна за персонализирани табла, екипни метрики или клиентски доставени материали. Следният пример показва как разработчиците могат да генерират персонализиран CSV отчет, използвайки PHP команди.

How to Generate a Custom CSV Report via PHP Library?

header("Content-Type: text/csv");
header("Content-Disposition: attachment; filename=\"report.csv\"");

$output = fopen("php://output", "w");
fputcsv($output, ['Task Name', 'Start Date', 'End Date']);

foreach ($tasks as $task) {
    fputcsv($output, [$task['task_name'], $task['task_start_date'], $task['task_end_date']]);
}
fclose($output);
exit;
         

Управление на документи и файлове

Всеки проект може да включва качване на файлове. Документите могат да бъдат версиирани, асоциирани със специфични задачи и управлявани по потребител. Централизираното съхранение на документи и файлове, свързани с проекта, е от съществено значение за организацията. Отворената библиотека Web2Project може да предостави функции за качване, организиране, версииране и споделяне на файлове в PHP проекти.

 Български