使用以下技術開發的應用程式:
此專案由 2 個模組組成:
模組由兩個HTML頁面組成,MVC架構。位於./modules/Application
科技
HTML5。 CSS、PHP、jQuery、D3.js
基本結構
系統介面
與 Api 模組的接口,該模組使用透過一系列傳回 JSON 的端點公開的 Web 服務,並使用這些端點動態建立報表圖形。
RESTful Web 服務層。位於./modules/Api
科技
PHP、MySQL、學說
它由結果頁面查閱的一系列端點組成,這些端點為結果頁面上的圖表提供資料。
暴露的端點
$ git clone [email protected]:diegoangel/informe-gei.git
$ cd informe-gei
$ git checkout zf3-version
$ composer install
更改連接憑證(如果適用)並運行:
mysql -u root -proot -e " CREATE SCHEMA informe_gei "
連線設定資料必須放置在config/autoload/local.php
檔案中。
. . .
return [
' doctrine ' => [
' connection ' => [
' orm_default ' => [
' driverClass ' => PDOMySqlDriver::class,
' params ' => [
' host ' => ' 127.0.0.1 ' ,
' user ' => ' root ' ,
' password ' => ' root ' ,
' dbname ' => ' informe_gei ' ,
' charset ' => ' utf8 ' ,
]
],
],
],
];
該檔案將不存在,因此您必須透過複製、貼上並重新命名config/autoload/local.php.dist
檔案來建立它。
cp config/autoload/local.php.dist config/autoload/local.php
此外,版本控制儲存庫中會忽略此文件,因此連接憑證永遠不會意外共用並保持安全。
Doctrine Migrations 專案的功能用於管理資料庫的變更和版本控制。要了解有關此工具的可能性或操作的更多信息,我們建議訪問項目文件的連結。
配置資料庫後,繼續初始資料載入。
運行以下命令來啟動它:
./vendor/bin/doctrine-module migrations:migrate
然後您將被告知該命令即將執行及其可能的重要性,您必須確認它。
Loading configuration from the integration code of your framework (setter).
Doctrine Database Migrations
WARNING ! You are about to execute a database migration that could result in schema changes and data lost. Are you sure you wish to continue ? (y/n)
按字母和
Doctrine 遷移設定參數位於config/autoload/global.php
檔案中
. . .
return [
' doctrine ' => [
// migrations configuration
' migrations_configuration ' => [
' orm_default ' => [
' directory ' => ' data/Migrations ' ,
' name ' => ' Doctrine Database Migrations ' ,
' namespace ' => ' Migrations ' ,
' table ' => ' migrations ' ,
],
],
],
];
在8080埠啟動控制台伺服器,並導覽至http://localhost:8080/,檢查網站是否正常運作。
注意:嵌入式 PHP 伺服器僅用於開發,在生產中使用 Apache、Nginx 或其他符合您要求的伺服器。
$ php -S 0.0.0.0:8080 -t public/ public/index.php
# O utilizar el alias definido en la sección scripts de composer.json:
$ composer serve
此專案具有預設的開發模式,可用於聲明僅在開發人員的本機環境中執行的配置,以便能夠建立與測試資料庫的連線等。提供三個別名來啟用、停用和查詢狀態:
$ composer development-enable # habilita el modo desarrollo
$ composer development-disable # deshabilita el modo desarrollo
$ composer development-status # informa sobre si esta o no habilitado el modo desarrollo
使用 PHPUnit 創建了兩個單元測試套件。
./module/Api/test
./module/Application/test
在控制台中執行以下命令。
$ ./vendor/bin/phpunit -v --debug --testsuite Api
$ ./vendor/bin/phpunit -v --debug --testsuite Application
您可以使用以下命令運行這兩個套件:
$ ./vendor/bin/phpunit -v --debug
若要產生測試覆蓋率報告,請在控制台中執行下列命令,然後在瀏覽器中開啟檔案./data/coverage/index.html
。
$ ./vendor/bin/phpunit -v --debug --coverage-html data/coverage
如果需要對 PHPUnit 配置新增本機修改,請將phpunit.xml.dist
複製到phpunit.xml
並編輯新檔案;當測試運行時,後者優先於前者,並被版本控制系統忽略。如果您想要永久編輯配置,請編輯phpunit.xml.dist
檔案。
使用 Scrutinizer CI 運行:
您可以找到我們在 Scrutinizer 持續整合伺服器上使用的設定檔scrutinizer.yml
。
可以透過文件標題下的徽章查看程式碼品質、測試覆蓋率和上次建置的狀態的評估。
注意:可以在 ./doc 資料夾中存取其他信息,例如圖像、技術文件和帶有項目報告資訊的螢幕截圖。
Apache 中的功能設定範例。
例如,此範例不考慮日誌記錄等級、日誌檔案位置或特殊重寫規則的聲明。
< VirtualHost *:80>
ServerName informe-gei.local
DocumentRoot /var/www/html/informe-gei/public
< Directory /var/www/html/informe-gei/public>
DirectoryIndex index.php
AllowOverride All
Order allow,deny
Allow from all
< IfModule mod_authz_core.c>
Require all granted
IfModule >
Directory >
VirtualHost >