├── .all-contributorsrc ├── .github └── workflows │ └── build.yml ├── .gitignore ├── .htaccess ├── .vscode └── settings.json ├── Dockerfile ├── Makefile ├── README.md ├── make.bat ├── requirements.txt ├── source ├── .nojekyll ├── _static │ ├── ci-logo-text.png │ ├── ci-logo-text.svg │ ├── ci-logo.png │ ├── css │ │ ├── citheme.css │ │ └── citheme_dark.css │ ├── favicon.ico │ ├── fonts │ │ └── Raleway │ │ │ ├── raleway-v14-latin-200.eot │ │ │ ├── raleway-v14-latin-200.svg │ │ │ ├── raleway-v14-latin-200.ttf │ │ │ ├── raleway-v14-latin-200.woff │ │ │ ├── raleway-v14-latin-200.woff2 │ │ │ ├── raleway-v14-latin-200italic.eot │ │ │ ├── raleway-v14-latin-200italic.svg │ │ │ ├── raleway-v14-latin-200italic.ttf │ │ │ ├── raleway-v14-latin-200italic.woff │ │ │ ├── raleway-v14-latin-200italic.woff2 │ │ │ ├── raleway-v14-latin-700.eot │ │ │ ├── raleway-v14-latin-700.svg │ │ │ ├── raleway-v14-latin-700.ttf │ │ │ ├── raleway-v14-latin-700.woff │ │ │ ├── raleway-v14-latin-700.woff2 │ │ │ ├── raleway-v14-latin-700italic.eot │ │ │ ├── raleway-v14-latin-700italic.svg │ │ │ ├── raleway-v14-latin-700italic.ttf │ │ │ ├── raleway-v14-latin-700italic.woff │ │ │ ├── raleway-v14-latin-700italic.woff2 │ │ │ ├── raleway-v14-latin-italic.eot │ │ │ ├── raleway-v14-latin-italic.svg │ │ │ ├── raleway-v14-latin-italic.ttf │ │ │ ├── raleway-v14-latin-italic.woff │ │ │ ├── raleway-v14-latin-italic.woff2 │ │ │ ├── raleway-v14-latin-regular.eot │ │ │ ├── raleway-v14-latin-regular.svg │ │ │ ├── raleway-v14-latin-regular.ttf │ │ │ ├── raleway-v14-latin-regular.woff │ │ │ └── raleway-v14-latin-regular.woff2 │ ├── img │ │ └── ci-background.png │ └── js │ │ ├── carbon.js │ │ └── citheme.js ├── _templates │ └── footer.html ├── changelogs │ ├── index.rst │ ├── v4.0.0-alpha.1.rst │ ├── v4.0.0-alpha.2.rst │ ├── v4.0.0-alpha.3.rst │ ├── v4.0.0-alpha.4.rst │ ├── v4.0.0-alpha.5.rst │ ├── v4.0.0-beta.1.rst │ ├── v4.0.0-beta.2.rst │ ├── v4.0.0-beta.3.rst │ ├── v4.0.0-beta.4.rst │ ├── v4.0.0-rc.1.rst │ ├── v4.0.0-rc.2.rst │ ├── v4.0.0-rc.3.rst │ ├── v4.0.0-rc.4.rst │ ├── v4.0.0.rst │ ├── v4.0.3.rst │ ├── v4.0.4.rst │ ├── v4.0.5.rst │ ├── v4.1.0.rst │ ├── v4.1.1.rst │ ├── v4.1.2.rst │ ├── v4.1.3.rst │ ├── v4.1.4.rst │ ├── v4.1.5.rst │ ├── v4.1.6.rst │ ├── v4.1.7.rst │ ├── v4.1.8.rst │ ├── v4.1.9.rst │ ├── v4.2.0.rst │ ├── v4.2.1.rst │ ├── v4.2.10.rst │ ├── v4.2.11.rst │ ├── v4.2.12.rst │ ├── v4.2.2.rst │ ├── v4.2.3.rst │ ├── v4.2.4.rst │ ├── v4.2.5.rst │ ├── v4.2.6.rst │ ├── v4.2.7.rst │ ├── v4.2.8.rst │ ├── v4.2.9.rst │ ├── v4.3.0.rst │ ├── v4.3.1.rst │ ├── v4.3.2.rst │ ├── v4.3.3.rst │ ├── v4.3.4.rst │ ├── v4.3.5.rst │ ├── v4.3.6.rst │ ├── v4.3.7.rst │ ├── v4.3.8.rst │ ├── v4.4.0.rst │ ├── v4.4.1.rst │ ├── v4.4.2.rst │ ├── v4.4.3.rst │ ├── v4.4.4.rst │ ├── v4.4.5.rst │ ├── v4.4.6.rst │ ├── v4.4.7.rst │ ├── v4.4.8.rst │ ├── v4.5.0.rst │ ├── v4.5.1.rst │ ├── v4.5.2.rst │ ├── v4.5.3.rst │ ├── v4.5.4.rst │ ├── v4.5.5.rst │ ├── v4.5.6.rst │ ├── v4.5.7.rst │ ├── v4.5.8.rst │ └── v4.6.0.rst ├── cli │ ├── cli_commands.rst │ ├── cli_commands │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ └── 007.php │ ├── cli_controllers.rst │ ├── cli_controllers │ │ ├── 001.php │ │ └── 002.php │ ├── cli_generators.rst │ ├── cli_generators │ │ └── 001.php │ ├── cli_library.rst │ ├── cli_library │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ └── 023.php │ ├── cli_overview.rst │ ├── cli_request.rst │ ├── cli_request │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ └── 006.php │ ├── index.rst │ └── spark_commands.rst ├── concepts │ ├── autoloader.rst │ ├── autoloader │ │ ├── 001.php │ │ ├── 002.php │ │ └── 003.php │ ├── factories.rst │ ├── factories │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ └── 015.php │ ├── goals.rst │ ├── http.rst │ ├── http │ │ ├── 001.php │ │ └── 002.php │ ├── index.rst │ ├── mvc.rst │ ├── security.rst │ ├── services.rst │ ├── services │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ └── 015.php │ └── structure.rst ├── conf.py ├── database │ ├── call_function.rst │ ├── call_function │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ └── 004.php │ ├── configuration.rst │ ├── configuration │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ └── 011.php │ ├── connecting.rst │ ├── connecting │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ └── 008.php │ ├── events.rst │ ├── events │ │ └── 001.php │ ├── examples.rst │ ├── examples │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ └── 008.php │ ├── helpers.rst │ ├── helpers │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ └── 004.php │ ├── index.rst │ ├── metadata.rst │ ├── metadata │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ └── 009.php │ ├── queries.rst │ ├── queries │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ ├── 027.php │ │ ├── 028.php │ │ └── 029.php │ ├── query_builder.rst │ ├── query_builder │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ ├── 027.php │ │ ├── 028.php │ │ ├── 029.php │ │ ├── 030.php │ │ ├── 031.php │ │ ├── 032.php │ │ ├── 033.php │ │ ├── 034.php │ │ ├── 035.php │ │ ├── 036.php │ │ ├── 037.php │ │ ├── 038.php │ │ ├── 039.php │ │ ├── 040.php │ │ ├── 041.php │ │ ├── 042.php │ │ ├── 043.php │ │ ├── 044.php │ │ ├── 045.php │ │ ├── 046.php │ │ ├── 047.php │ │ ├── 048.php │ │ ├── 049.php │ │ ├── 050.php │ │ ├── 051.php │ │ ├── 052.php │ │ ├── 053.php │ │ ├── 054.php │ │ ├── 055.php │ │ ├── 056.php │ │ ├── 057.php │ │ ├── 058.php │ │ ├── 059.php │ │ ├── 060.php │ │ ├── 061.php │ │ ├── 062.php │ │ ├── 063.php │ │ ├── 064.php │ │ ├── 065.php │ │ ├── 066.php │ │ ├── 067.php │ │ ├── 068.php │ │ ├── 069.php │ │ ├── 070.php │ │ ├── 071.php │ │ ├── 072.php │ │ ├── 073.php │ │ ├── 074.php │ │ ├── 075.php │ │ ├── 076.php │ │ ├── 077.php │ │ ├── 078.php │ │ ├── 079.php │ │ ├── 080.php │ │ ├── 081.php │ │ ├── 082.php │ │ ├── 083.php │ │ ├── 084.php │ │ ├── 085.php │ │ ├── 086.php │ │ ├── 087.php │ │ ├── 088.php │ │ ├── 089.php │ │ ├── 090.php │ │ ├── 091.php │ │ ├── 092.php │ │ ├── 093.php │ │ ├── 094.php │ │ ├── 095.php │ │ ├── 096.php │ │ ├── 097.php │ │ ├── 098.php │ │ ├── 099.php │ │ ├── 100.php │ │ ├── 101.php │ │ ├── 102.php │ │ ├── 103.php │ │ ├── 104.php │ │ ├── 105.php │ │ ├── 106.php │ │ ├── 107.php │ │ ├── 108.php │ │ ├── 109.php │ │ ├── 110.php │ │ ├── 111.php │ │ ├── 112.php │ │ ├── 113.php │ │ ├── 114.php │ │ ├── 115.php │ │ ├── 116.php │ │ ├── 117.php │ │ ├── 118.php │ │ ├── 119.php │ │ ├── 120.php │ │ ├── 121.php │ │ └── 122.php │ ├── results.rst │ ├── results │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ └── 021.php │ ├── transactions.rst │ ├── transactions │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ └── 009.php │ ├── utilities.rst │ └── utilities │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 008.php │ │ ├── 009.php │ │ └── 010.php ├── dbmgmt │ ├── db_commands.rst │ ├── forge.rst │ ├── forge │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ ├── 027.php │ │ ├── 028.php │ │ └── 029.php │ ├── index.rst │ ├── migration.rst │ ├── migration │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 006.php │ │ ├── 007.php │ │ └── 008.php │ ├── seeds.rst │ └── seeds │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ └── 004.php ├── extending │ ├── authentication.rst │ ├── basecontroller.rst │ ├── basecontroller │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ └── 004.php │ ├── common.rst │ ├── composer_packages.rst │ ├── contributing.rst │ ├── core_classes.rst │ ├── core_classes │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ └── 004.php │ ├── events.rst │ ├── events │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ └── 008.php │ └── index.rst ├── general │ ├── ajax.rst │ ├── caching.rst │ ├── caching │ │ └── 001.php │ ├── common_functions.rst │ ├── common_functions │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ └── 012.php │ ├── configuration.rst │ ├── configuration │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ └── 011.php │ ├── environments.rst │ ├── errors.rst │ ├── errors │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ └── 018.php │ ├── helpers.rst │ ├── helpers │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ └── 008.php │ ├── index.rst │ ├── logging.rst │ ├── logging │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ └── 006.php │ ├── managing_apps.rst │ ├── managing_apps │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ └── 005.php │ ├── modules.rst │ ├── modules │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ └── 015.php │ └── urls.rst ├── helpers │ ├── array_helper.rst │ ├── array_helper │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ └── 014.php │ ├── cookie_helper.rst │ ├── cookie_helper │ │ ├── 001.php │ │ ├── 002.php │ │ └── 003.php │ ├── date_helper.rst │ ├── date_helper │ │ ├── 001.php │ │ ├── 002.php │ │ └── 003.php │ ├── filesystem_helper.rst │ ├── filesystem_helper │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ └── 015.php │ ├── form_helper.rst │ ├── form_helper │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ ├── 027.php │ │ ├── 028.php │ │ ├── 029.php │ │ ├── 030.php │ │ ├── 031.php │ │ ├── 032.php │ │ ├── 033.php │ │ ├── 034.php │ │ └── 035.php │ ├── html_helper.rst │ ├── html_helper │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ └── 020.php │ ├── index.rst │ ├── inflector_helper.rst │ ├── inflector_helper │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ └── 014.php │ ├── number_helper.rst │ ├── number_helper │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ └── 009.php │ ├── security_helper.rst │ ├── security_helper │ │ ├── 001.php │ │ ├── 002.php │ │ └── 003.php │ ├── test_helper.rst │ ├── test_helper │ │ ├── 001.php │ │ └── 002.php │ ├── text_helper.rst │ ├── text_helper │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ └── 022.php │ ├── url_helper.rst │ ├── url_helper │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ └── 026.php │ ├── xml_helper.rst │ └── xml_helper │ │ ├── 001.php │ │ └── 002.php ├── images │ ├── appflowchart.gif │ ├── arrow.gif │ ├── ci-icon.ico │ ├── ci_logo.jpg │ ├── ci_logo_flame.jpg │ ├── debugbar.png │ ├── error.png │ ├── file.gif │ ├── folder.gif │ ├── smile.gif │ ├── tutorial0.png │ ├── tutorial1.png │ ├── tutorial2.png │ ├── tutorial3.png │ ├── tutorial4.png │ ├── tutorial9.png │ └── welcome.png ├── incoming │ ├── auto_routing_improved.rst │ ├── auto_routing_improved │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 020.php │ │ ├── 021.php │ │ └── 022.php │ ├── content_negotiation.rst │ ├── content_negotiation │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ └── 008.php │ ├── controllers.rst │ ├── controllers │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 023.php │ │ ├── 024.php │ │ └── 025.php │ ├── filters.rst │ ├── filters │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 011.php │ │ ├── 012.php │ │ └── 013.php │ ├── incomingrequest.rst │ ├── incomingrequest │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ ├── 032.php │ │ ├── 033.php │ │ ├── 034.php │ │ ├── 035.php │ │ ├── 036.php │ │ ├── 037.php │ │ ├── 038.php │ │ ├── 039.php │ │ ├── 040.php │ │ ├── 041.php │ │ ├── 042.php │ │ ├── 043.php │ │ ├── 044.php │ │ └── 045.php │ ├── index.rst │ ├── message.rst │ ├── message │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ └── 011.php │ ├── methodspoofing.rst │ ├── request.rst │ ├── request │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ └── 007.php │ ├── restful.rst │ ├── restful │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ └── 020.php │ ├── routing.rst │ └── routing │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ ├── 027.php │ │ ├── 028.php │ │ ├── 029.php │ │ ├── 030.php │ │ ├── 031.php │ │ ├── 032.php │ │ ├── 033.php │ │ ├── 034.php │ │ ├── 035.php │ │ ├── 036.php │ │ ├── 037.php │ │ ├── 038.php │ │ ├── 039.php │ │ ├── 040.php │ │ ├── 041.php │ │ ├── 042.php │ │ ├── 043.php │ │ ├── 044.php │ │ ├── 045.php │ │ ├── 046.php │ │ ├── 049.php │ │ ├── 050.php │ │ ├── 051.php │ │ ├── 052.php │ │ ├── 063.php │ │ ├── 064.php │ │ ├── 065.php │ │ ├── 066.php │ │ ├── 067.php │ │ ├── 068.php │ │ ├── 069.php │ │ ├── 070.php │ │ ├── 071.php │ │ ├── 072.php │ │ └── 073.php ├── index.rst ├── installation │ ├── backward_compatibility_notes.rst │ ├── deployment.rst │ ├── index.rst │ ├── installing_composer.rst │ ├── installing_manual.rst │ ├── preloading │ │ └── 001.php │ ├── repositories.rst │ ├── running.rst │ ├── troubleshooting.rst │ ├── troubleshooting │ │ ├── 001.php │ │ └── 002.php │ ├── upgrade_404.rst │ ├── upgrade_405.rst │ ├── upgrade_410.rst │ ├── upgrade_412.rst │ ├── upgrade_412 │ │ ├── 001.php │ │ └── 002.php │ ├── upgrade_413.rst │ ├── upgrade_414.rst │ ├── upgrade_415.rst │ ├── upgrade_415 │ │ └── 001.php │ ├── upgrade_416.rst │ ├── upgrade_417.rst │ ├── upgrade_418.rst │ ├── upgrade_420.rst │ ├── upgrade_421.rst │ ├── upgrade_4210.rst │ ├── upgrade_4211.rst │ ├── upgrade_4212.rst │ ├── upgrade_422.rst │ ├── upgrade_423.rst │ ├── upgrade_425.rst │ ├── upgrade_426.rst │ ├── upgrade_427.rst │ ├── upgrade_428.rst │ ├── upgrade_430.rst │ ├── upgrade_431.rst │ ├── upgrade_432.rst │ ├── upgrade_433.rst │ ├── upgrade_434.rst │ ├── upgrade_435.rst │ ├── upgrade_436.rst │ ├── upgrade_437.rst │ ├── upgrade_438.rst │ ├── upgrade_440.rst │ ├── upgrade_440 │ │ └── 002.php │ ├── upgrade_441.rst │ ├── upgrade_442.rst │ ├── upgrade_443.rst │ ├── upgrade_444.rst │ ├── upgrade_444 │ │ └── 001.php │ ├── upgrade_445.rst │ ├── upgrade_446.rst │ ├── upgrade_447.rst │ ├── upgrade_448.rst │ ├── upgrade_450.rst │ ├── upgrade_451.rst │ ├── upgrade_452.rst │ ├── upgrade_453.rst │ ├── upgrade_454.rst │ ├── upgrade_455.rst │ ├── upgrade_456.rst │ ├── upgrade_457.rst │ ├── upgrade_458.rst │ ├── upgrade_460.rst │ ├── upgrade_460 │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ └── 009.php │ ├── upgrade_4xx.rst │ ├── upgrade_configuration.rst │ ├── upgrade_configuration │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_controllers.rst │ ├── upgrade_controllers │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_database.rst │ ├── upgrade_database │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_emails.rst │ ├── upgrade_emails │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_encryption.rst │ ├── upgrade_encryption │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_file_upload.rst │ ├── upgrade_file_upload │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_html_tables.rst │ ├── upgrade_html_tables │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_images.rst │ ├── upgrade_images │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_localization.rst │ ├── upgrade_localization │ │ ├── 001.php │ │ ├── 002.php │ │ └── ci3sample │ │ │ └── 002.php │ ├── upgrade_migrations.rst │ ├── upgrade_migrations │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_models.rst │ ├── upgrade_models │ │ ├── 001.php │ │ ├── 002.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_pagination.rst │ ├── upgrade_pagination │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_responses.rst │ ├── upgrade_responses │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_routing.rst │ ├── upgrade_routing │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_security.rst │ ├── upgrade_security │ │ ├── 001.php │ │ ├── 002.php │ │ └── ci3sample │ │ │ └── 002.php │ ├── upgrade_sessions.rst │ ├── upgrade_sessions │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_validations.rst │ ├── upgrade_validations │ │ ├── 001.php │ │ ├── 002.php │ │ └── ci3sample │ │ │ └── 002.php │ ├── upgrade_view_parser.rst │ ├── upgrade_view_parser │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ ├── upgrade_views.rst │ ├── upgrade_views │ │ ├── 001.php │ │ └── ci3sample │ │ │ └── 001.php │ └── upgrading.rst ├── intro │ ├── credits.rst │ ├── index.rst │ ├── psr.rst │ └── requirements.rst ├── libraries │ ├── caching.rst │ ├── caching │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ └── 014.php │ ├── cookies.rst │ ├── cookies │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ └── 018.php │ ├── cors.rst │ ├── cors │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ └── 005.php │ ├── curlrequest.rst │ ├── curlrequest │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ ├── 027.php │ │ ├── 028.php │ │ ├── 029.php │ │ ├── 030.php │ │ ├── 031.php │ │ ├── 032.php │ │ ├── 033.php │ │ ├── 034.php │ │ ├── 035.php │ │ └── 036.php │ ├── email.rst │ ├── email │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ └── 023.php │ ├── encryption.rst │ ├── encryption │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ └── 013.php │ ├── file_collections.rst │ ├── files.rst │ ├── files │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ └── 018.php │ ├── honeypot.rst │ ├── honeypot │ │ └── 001.php │ ├── images.rst │ ├── images │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ └── 014.php │ ├── index.rst │ ├── official_packages.rst │ ├── pagination.rst │ ├── pagination │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ └── 019.php │ ├── publisher.rst │ ├── publisher │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ └── 016.php │ ├── security.rst │ ├── security │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ └── 010.php │ ├── sessions.rst │ ├── sessions │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ ├── 027.php │ │ ├── 028.php │ │ ├── 029.php │ │ ├── 030.php │ │ ├── 031.php │ │ ├── 032.php │ │ ├── 033.php │ │ ├── 034.php │ │ ├── 035.php │ │ ├── 036.php │ │ ├── 037.php │ │ ├── 039.php │ │ ├── 040.php │ │ ├── 041.php │ │ ├── 042.php │ │ ├── 043.php │ │ └── 044.php │ ├── throttler.rst │ ├── throttler │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ └── 004.php │ ├── time.rst │ ├── time │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ ├── 027.php │ │ ├── 028.php │ │ ├── 029.php │ │ ├── 030.php │ │ ├── 031.php │ │ ├── 032.php │ │ ├── 033.php │ │ ├── 034.php │ │ ├── 035.php │ │ ├── 036.php │ │ ├── 037.php │ │ ├── 038.php │ │ ├── 039.php │ │ ├── 040.php │ │ ├── 041.php │ │ └── 042.php │ ├── typography.rst │ ├── typography │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ └── 004.php │ ├── uploaded_files.rst │ ├── uploaded_files │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ └── 023.php │ ├── uri.rst │ ├── uri │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ └── 027.php │ ├── user_agent.rst │ ├── user_agent │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ └── 005.php │ ├── validation.rst │ └── validation │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ ├── 027.php │ │ ├── 028.php │ │ ├── 029.php │ │ ├── 030.php │ │ ├── 031.php │ │ ├── 032.php │ │ ├── 033.php │ │ ├── 034.php │ │ ├── 035.php │ │ ├── 036.php │ │ ├── 037.php │ │ ├── 038.php │ │ ├── 039.php │ │ ├── 040.php │ │ ├── 041.php │ │ ├── 042.php │ │ ├── 043.php │ │ ├── 044.php │ │ ├── 045.php │ │ ├── 046.php │ │ └── 047.php ├── license.rst ├── models │ ├── entities.rst │ ├── entities │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ └── 023.php │ ├── index.rst │ ├── model.rst │ └── model │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ ├── 027.php │ │ ├── 028.php │ │ ├── 029.php │ │ ├── 030.php │ │ ├── 031.php │ │ ├── 032.php │ │ ├── 033.php │ │ ├── 034.php │ │ ├── 035.php │ │ ├── 036.php │ │ ├── 037.php │ │ ├── 038.php │ │ ├── 039.php │ │ ├── 040.php │ │ ├── 041.php │ │ ├── 042.php │ │ ├── 043.php │ │ ├── 044.php │ │ ├── 045.php │ │ ├── 046.php │ │ ├── 047.php │ │ ├── 048.php │ │ ├── 049.php │ │ ├── 050.php │ │ ├── 051.php │ │ ├── 052.php │ │ ├── 053.php │ │ ├── 054.php │ │ ├── 055.php │ │ ├── 056.php │ │ ├── 057.php │ │ ├── 058.php │ │ ├── 059.php │ │ ├── 060.php │ │ ├── 061.php │ │ ├── 062.php │ │ └── 063.php ├── outgoing │ ├── alternative_php.rst │ ├── alternative_php │ │ ├── 001.php │ │ └── 002.php │ ├── api_responses.rst │ ├── api_responses │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ └── 017.php │ ├── csp.rst │ ├── csp │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ └── 014.php │ ├── index.rst │ ├── localization.rst │ ├── localization │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ └── 021.php │ ├── response.rst │ ├── response │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ ├── 027.php │ │ ├── 028.php │ │ ├── 029.php │ │ ├── 030.php │ │ ├── 031.php │ │ ├── 032.php │ │ ├── 033.php │ │ ├── 034.php │ │ └── 035.php │ ├── table.rst │ ├── table │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ └── 020.php │ ├── view_cells.rst │ ├── view_cells │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ └── 023.php │ ├── view_decorators.rst │ ├── view_decorators │ │ ├── 001.php │ │ └── 002.php │ ├── view_layouts.rst │ ├── view_layouts │ │ └── 001.php │ ├── view_parser.rst │ ├── view_parser │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ └── 027.php │ ├── view_renderer.rst │ ├── view_renderer │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ └── 008.php │ ├── views.rst │ └── views │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ └── 013.php ├── testing │ ├── benchmark.rst │ ├── benchmark │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ └── 012.php │ ├── cli.rst │ ├── cli │ │ └── 001.php │ ├── controllers.rst │ ├── controllers │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ └── 018.php │ ├── database.rst │ ├── database │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ └── 008.php │ ├── debugging.rst │ ├── debugging │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ └── 006.php │ ├── fabricator.rst │ ├── fabricator │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ └── 023.php │ ├── feature.rst │ ├── feature │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ └── 008.php │ ├── index.rst │ ├── mocking.rst │ ├── mocking │ │ ├── 001.php │ │ ├── 002.php │ │ └── 003.php │ ├── overview.rst │ ├── overview │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ └── 022.php │ ├── response.rst │ └── response │ │ ├── 001.php │ │ ├── 002.php │ │ ├── 003.php │ │ ├── 004.php │ │ ├── 005.php │ │ ├── 006.php │ │ ├── 007.php │ │ ├── 008.php │ │ ├── 009.php │ │ ├── 010.php │ │ ├── 011.php │ │ ├── 012.php │ │ ├── 013.php │ │ ├── 014.php │ │ ├── 015.php │ │ ├── 016.php │ │ ├── 017.php │ │ ├── 018.php │ │ ├── 019.php │ │ ├── 020.php │ │ ├── 021.php │ │ ├── 022.php │ │ ├── 023.php │ │ ├── 024.php │ │ ├── 025.php │ │ ├── 026.php │ │ ├── 027.php │ │ ├── 028.php │ │ ├── 029.php │ │ ├── 030.php │ │ ├── 031.php │ │ ├── 032.php │ │ ├── 033.php │ │ └── 034.php └── tutorial │ ├── conclusion.rst │ ├── create_news_items.rst │ ├── create_news_items │ ├── 001.php │ ├── 002.php │ ├── 003.php │ ├── 004.php │ ├── 005.php │ └── 006.php │ ├── index.rst │ ├── news_section.rst │ ├── news_section │ ├── 001.php │ ├── 002.php │ ├── 003.php │ ├── 004.php │ ├── 005.php │ ├── 006.php │ ├── 007.php │ └── 008.php │ ├── static_pages.rst │ └── static_pages │ ├── 001.php │ ├── 002.php │ ├── 003.php │ └── 004.php └── translation-guide.md /.htaccess: -------------------------------------------------------------------------------- 1 | 2 | Require all denied 3 | 4 | 5 | Deny from all 6 | 7 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "editor.tabSize": 4, 3 | "esbonio.sphinx.confDir": "${workspaceFolder}/source", 4 | "editor.fontFamily": "Iosevka Fixed", 5 | } 6 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | sphinx>=5.3.0,<6.0.0 2 | sphinxcontrib-phpdomain>=0.11.0 3 | docutils>=0.19 4 | sphinx-rtd-theme>=2.0.0,<3.0.0 5 | jinja2>=3.1.3,<4.0.0 6 | jieba==0.42.1 7 | -------------------------------------------------------------------------------- /source/.nojekyll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/.nojekyll -------------------------------------------------------------------------------- /source/_static/ci-logo-text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/_static/ci-logo-text.png -------------------------------------------------------------------------------- /source/_static/ci-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/_static/ci-logo.png -------------------------------------------------------------------------------- /source/_static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/_static/favicon.ico -------------------------------------------------------------------------------- /source/_static/img/ci-background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/_static/img/ci-background.png -------------------------------------------------------------------------------- /source/cli/cli_commands/001.php: -------------------------------------------------------------------------------- 1 | call('command_one'); 4 | $this->call('command_two', $params); 5 | -------------------------------------------------------------------------------- /source/cli/cli_commands/006.php: -------------------------------------------------------------------------------- 1 | showError($e); 7 | } 8 | -------------------------------------------------------------------------------- /source/cli/cli_controllers/002.php: -------------------------------------------------------------------------------- 1 | cli('tools/message/(:segment)', 'Tools::message/$1'); 4 | -------------------------------------------------------------------------------- /source/cli/cli_library/002.php: -------------------------------------------------------------------------------- 1 | getSegments(); // ['users', '21', 'profile'] 5 | -------------------------------------------------------------------------------- /source/cli/cli_request/002.php: -------------------------------------------------------------------------------- 1 | getPath(); // users/21/profile 5 | -------------------------------------------------------------------------------- /source/cli/cli_request/003.php: -------------------------------------------------------------------------------- 1 | getOptions(); // ['foo' => 'bar'] 5 | -------------------------------------------------------------------------------- /source/cli/cli_request/005.php: -------------------------------------------------------------------------------- 1 | getOptionString(); // -foo bar 5 | -------------------------------------------------------------------------------- /source/cli/cli_request/006.php: -------------------------------------------------------------------------------- 1 | getOptionString(); // -foo bar -f 5 | echo $request->getOptionString(true); // --foo bar -f 6 | -------------------------------------------------------------------------------- /source/concepts/autoloader/002.php: -------------------------------------------------------------------------------- 1 | false]); 6 | -------------------------------------------------------------------------------- /source/concepts/factories/012.php: -------------------------------------------------------------------------------- 1 | callFunction('get_client_info'); 4 | -------------------------------------------------------------------------------- /source/database/call_function/002.php: -------------------------------------------------------------------------------- 1 | callFunction('some_function', $param1, $param2 /* , ... */); 4 | -------------------------------------------------------------------------------- /source/database/call_function/003.php: -------------------------------------------------------------------------------- 1 | connID; 4 | -------------------------------------------------------------------------------- /source/database/call_function/004.php: -------------------------------------------------------------------------------- 1 | query('SOME QUERY'); 4 | 5 | $query->resultID; 6 | -------------------------------------------------------------------------------- /source/database/connecting/001.php: -------------------------------------------------------------------------------- 1 | reconnect(); 4 | -------------------------------------------------------------------------------- /source/database/connecting/008.php: -------------------------------------------------------------------------------- 1 | close(); 4 | -------------------------------------------------------------------------------- /source/database/examples/001.php: -------------------------------------------------------------------------------- 1 | query('SELECT name FROM my_table LIMIT 1'); 4 | $row = $query->getRow(); 5 | echo $row->name; 6 | -------------------------------------------------------------------------------- /source/database/examples/005.php: -------------------------------------------------------------------------------- 1 | query('SELECT name FROM my_table LIMIT 1'); 4 | $row = $query->getRowArray(); 5 | echo $row['name']; 6 | -------------------------------------------------------------------------------- /source/database/examples/007.php: -------------------------------------------------------------------------------- 1 | table('table_name')->get(); 4 | 5 | foreach ($query->getResult() as $row) { 6 | echo $row->title; 7 | } 8 | -------------------------------------------------------------------------------- /source/database/helpers/001.php: -------------------------------------------------------------------------------- 1 | table('my_table')->countAll(); 4 | // Produces an integer, like 25 5 | -------------------------------------------------------------------------------- /source/database/helpers/002.php: -------------------------------------------------------------------------------- 1 | table('my_table')->like('title', 'match')->countAllResults(); 4 | // Produces an integer, like 5 5 | -------------------------------------------------------------------------------- /source/database/helpers/003.php: -------------------------------------------------------------------------------- 1 | getPlatform(); 4 | -------------------------------------------------------------------------------- /source/database/helpers/004.php: -------------------------------------------------------------------------------- 1 | getVersion(); 4 | -------------------------------------------------------------------------------- /source/database/metadata/001.php: -------------------------------------------------------------------------------- 1 | listTables(); 6 | 7 | foreach ($tables as $table) { 8 | echo $table; 9 | } 10 | -------------------------------------------------------------------------------- /source/database/metadata/002.php: -------------------------------------------------------------------------------- 1 | tableExists('table_name')) { 6 | // some code... 7 | } 8 | -------------------------------------------------------------------------------- /source/database/metadata/003.php: -------------------------------------------------------------------------------- 1 | getFieldNames('table_name'); 6 | 7 | foreach ($fields as $field) { 8 | echo $field; 9 | } 10 | -------------------------------------------------------------------------------- /source/database/metadata/005.php: -------------------------------------------------------------------------------- 1 | fieldExists('field_name', 'table_name')) { 6 | // some code... 7 | } 8 | -------------------------------------------------------------------------------- /source/database/metadata/007.php: -------------------------------------------------------------------------------- 1 | query('YOUR QUERY'); 6 | $fields = $query->getFieldData(); 7 | -------------------------------------------------------------------------------- /source/database/queries/001.php: -------------------------------------------------------------------------------- 1 | query('YOUR QUERY HERE'); 5 | -------------------------------------------------------------------------------- /source/database/queries/002.php: -------------------------------------------------------------------------------- 1 | query('YOUR QUERY HERE'); 4 | -------------------------------------------------------------------------------- /source/database/queries/003.php: -------------------------------------------------------------------------------- 1 | simpleQuery('YOUR QUERY')) { 4 | echo 'Success!'; 5 | } else { 6 | echo 'Query failed!'; 7 | } 8 | -------------------------------------------------------------------------------- /source/database/queries/004.php: -------------------------------------------------------------------------------- 1 | prefixTable('tablename'); // outputs prefix_tablename 4 | -------------------------------------------------------------------------------- /source/database/queries/005.php: -------------------------------------------------------------------------------- 1 | setPrefix('newprefix_'); 4 | $db->prefixTable('tablename'); // outputs newprefix_tablename 5 | -------------------------------------------------------------------------------- /source/database/queries/006.php: -------------------------------------------------------------------------------- 1 | getPrefix(); 4 | -------------------------------------------------------------------------------- /source/database/queries/007.php: -------------------------------------------------------------------------------- 1 | protectIdentifiers('table_name'); 4 | -------------------------------------------------------------------------------- /source/database/queries/008.php: -------------------------------------------------------------------------------- 1 | protectIdentifiers('table_name', true); 4 | -------------------------------------------------------------------------------- /source/database/queries/009.php: -------------------------------------------------------------------------------- 1 | escape($title) . ')'; 4 | -------------------------------------------------------------------------------- /source/database/queries/010.php: -------------------------------------------------------------------------------- 1 | escapeString($title) . "')"; 4 | -------------------------------------------------------------------------------- /source/database/queries/011.php: -------------------------------------------------------------------------------- 1 | escapeLikeString($search) . "%' ESCAPE '!'"; 5 | -------------------------------------------------------------------------------- /source/database/queries/012.php: -------------------------------------------------------------------------------- 1 | query($sql, [3, 'live', 'Rick']); 5 | -------------------------------------------------------------------------------- /source/database/queries/013.php: -------------------------------------------------------------------------------- 1 | query($sql, [[3, 6], 'live', 'Rick']); 5 | -------------------------------------------------------------------------------- /source/database/queries/015.php: -------------------------------------------------------------------------------- 1 | simpleQuery('SELECT `example_field` FROM `example_table`')) { 4 | $error = $db->error(); // Has keys 'code' and 'message' 5 | } 6 | -------------------------------------------------------------------------------- /source/database/queries/020.php: -------------------------------------------------------------------------------- 1 | close()) { 4 | echo 'Success!'; 5 | } else { 6 | echo 'Deallocation of prepared statements failed!'; 7 | } 8 | -------------------------------------------------------------------------------- /source/database/queries/021.php: -------------------------------------------------------------------------------- 1 | getLastQuery(); 4 | echo (string) $query; 5 | -------------------------------------------------------------------------------- /source/database/queries/022.php: -------------------------------------------------------------------------------- 1 | getQuery(); 4 | -------------------------------------------------------------------------------- /source/database/queries/023.php: -------------------------------------------------------------------------------- 1 | getOriginalQuery(); 4 | -------------------------------------------------------------------------------- /source/database/queries/025.php: -------------------------------------------------------------------------------- 1 | hasError()) { 4 | echo 'Code: ' . $query->getErrorCode(); 5 | echo 'Error: ' . $query->getErrorMessage(); 6 | } 7 | -------------------------------------------------------------------------------- /source/database/queries/026.php: -------------------------------------------------------------------------------- 1 | isWriteType()) { 4 | // ... do something 5 | } 6 | -------------------------------------------------------------------------------- /source/database/queries/027.php: -------------------------------------------------------------------------------- 1 | swapPrefix('ci3_', 'ci4_'); 4 | -------------------------------------------------------------------------------- /source/database/queries/028.php: -------------------------------------------------------------------------------- 1 | getStartTime(); 4 | -------------------------------------------------------------------------------- /source/database/queries/029.php: -------------------------------------------------------------------------------- 1 | getDuration(); 4 | -------------------------------------------------------------------------------- /source/database/query_builder/001.php: -------------------------------------------------------------------------------- 1 | table('users'); 5 | -------------------------------------------------------------------------------- /source/database/query_builder/002.php: -------------------------------------------------------------------------------- 1 | table('mytable'); 4 | $query = $builder->get(); // Produces: SELECT * FROM mytable 5 | -------------------------------------------------------------------------------- /source/database/query_builder/004.php: -------------------------------------------------------------------------------- 1 | get(); 4 | 5 | foreach ($query->getResult() as $row) { 6 | echo $row->title; 7 | } 8 | -------------------------------------------------------------------------------- /source/database/query_builder/005.php: -------------------------------------------------------------------------------- 1 | getCompiledSelect(); 4 | echo $sql; 5 | // Prints string: SELECT * FROM mytable 6 | -------------------------------------------------------------------------------- /source/database/query_builder/007.php: -------------------------------------------------------------------------------- 1 | getWhere(['id' => $id], $limit, $offset); 4 | -------------------------------------------------------------------------------- /source/database/query_builder/008.php: -------------------------------------------------------------------------------- 1 | select('title, content, date'); 4 | $query = $builder->get(); 5 | // Executes: SELECT title, content, date FROM mytable 6 | -------------------------------------------------------------------------------- /source/database/query_builder/011.php: -------------------------------------------------------------------------------- 1 | selectMin('age'); 4 | $query = $builder->get(); 5 | // Produces: SELECT MIN(age) as age FROM mytable 6 | -------------------------------------------------------------------------------- /source/database/query_builder/012.php: -------------------------------------------------------------------------------- 1 | selectAvg('age'); 4 | $query = $builder->get(); 5 | // Produces: SELECT AVG(age) as age FROM mytable 6 | -------------------------------------------------------------------------------- /source/database/query_builder/013.php: -------------------------------------------------------------------------------- 1 | selectSum('age'); 4 | $query = $builder->get(); 5 | // Produces: SELECT SUM(age) as age FROM mytable 6 | -------------------------------------------------------------------------------- /source/database/query_builder/014.php: -------------------------------------------------------------------------------- 1 | selectCount('age'); 4 | $query = $builder->get(); 5 | // Produces: SELECT COUNT(age) as age FROM mytable 6 | -------------------------------------------------------------------------------- /source/database/query_builder/020.php: -------------------------------------------------------------------------------- 1 | join('comments', 'comments.id = blogs.id', 'left'); 4 | // Produces: LEFT JOIN comments ON comments.id = blogs.id 5 | -------------------------------------------------------------------------------- /source/database/query_builder/021.php: -------------------------------------------------------------------------------- 1 | where('name', $name); 4 | // Produces: WHERE name = 'Joe' 5 | -------------------------------------------------------------------------------- /source/database/query_builder/023.php: -------------------------------------------------------------------------------- 1 | where('name !=', $name); 4 | $builder->where('id <', $id); 5 | // Produces: WHERE name != 'Joe' AND id < 45 6 | -------------------------------------------------------------------------------- /source/database/query_builder/025.php: -------------------------------------------------------------------------------- 1 | $name, 'id <' => $id, 'date >' => $date]; 4 | $builder->where($array); 5 | -------------------------------------------------------------------------------- /source/database/query_builder/026.php: -------------------------------------------------------------------------------- 1 | where($where); 5 | -------------------------------------------------------------------------------- /source/database/query_builder/027.php: -------------------------------------------------------------------------------- 1 | db->escape('Joe'); 4 | $where = "name={$name} AND status='boss' OR status='active'"; 5 | $builder->where($where); 6 | -------------------------------------------------------------------------------- /source/database/query_builder/029.php: -------------------------------------------------------------------------------- 1 | where('name !=', $name); 4 | $builder->orWhere('id >', $id); 5 | // Produces: WHERE name != 'Joe' OR id > 50 6 | -------------------------------------------------------------------------------- /source/database/query_builder/030.php: -------------------------------------------------------------------------------- 1 | whereIn('username', $names); 5 | // Produces: WHERE username IN ('Frank', 'Todd', 'James') 6 | -------------------------------------------------------------------------------- /source/database/query_builder/032.php: -------------------------------------------------------------------------------- 1 | orWhereIn('username', $names); 5 | // Produces: OR username IN ('Frank', 'Todd', 'James') 6 | -------------------------------------------------------------------------------- /source/database/query_builder/038.php: -------------------------------------------------------------------------------- 1 | like('title', 'match'); 4 | // Produces: WHERE `title` LIKE '%match%' ESCAPE '!' 5 | -------------------------------------------------------------------------------- /source/database/query_builder/043.php: -------------------------------------------------------------------------------- 1 | notLike('title', 'match'); // WHERE `title` NOT LIKE '%match% ESCAPE '!' 4 | -------------------------------------------------------------------------------- /source/database/query_builder/045.php: -------------------------------------------------------------------------------- 1 | groupBy('title'); 4 | // Produces: GROUP BY title 5 | -------------------------------------------------------------------------------- /source/database/query_builder/046.php: -------------------------------------------------------------------------------- 1 | groupBy(['title', 'date']); 4 | // Produces: GROUP BY title, date 5 | -------------------------------------------------------------------------------- /source/database/query_builder/047.php: -------------------------------------------------------------------------------- 1 | distinct(); 4 | $builder->get(); 5 | // Produces: SELECT DISTINCT * FROM mytable 6 | -------------------------------------------------------------------------------- /source/database/query_builder/048.php: -------------------------------------------------------------------------------- 1 | having('user_id = 45'); // Produces: HAVING user_id = 45 4 | $builder->having('user_id', 45); // Produces: HAVING user_id = 45 5 | -------------------------------------------------------------------------------- /source/database/query_builder/049.php: -------------------------------------------------------------------------------- 1 | having(['title =' => 'My Title', 'id <' => $id]); 4 | // Produces: HAVING title = 'My Title', id < 45 5 | -------------------------------------------------------------------------------- /source/database/query_builder/051.php: -------------------------------------------------------------------------------- 1 | havingIn('group_id', $groups); 5 | // Produces: HAVING group_id IN (1, 2, 3) 6 | -------------------------------------------------------------------------------- /source/database/query_builder/053.php: -------------------------------------------------------------------------------- 1 | orHavingIn('group_id', $groups); 5 | // Produces: OR group_id IN (1, 2, 3) 6 | -------------------------------------------------------------------------------- /source/database/query_builder/055.php: -------------------------------------------------------------------------------- 1 | havingNotIn('group_id', $groups); 5 | // Produces: HAVING group_id NOT IN (1, 2, 3) 6 | -------------------------------------------------------------------------------- /source/database/query_builder/057.php: -------------------------------------------------------------------------------- 1 | havingNotIn('group_id', $groups); 5 | // Produces: OR group_id NOT IN (1, 2, 3) 6 | -------------------------------------------------------------------------------- /source/database/query_builder/059.php: -------------------------------------------------------------------------------- 1 | havingLike('title', 'match'); 4 | // Produces: HAVING `title` LIKE '%match%' ESCAPE '!' 5 | -------------------------------------------------------------------------------- /source/database/query_builder/064.php: -------------------------------------------------------------------------------- 1 | notHavingLike('title', 'match'); 4 | // HAVING `title` NOT LIKE '%match% ESCAPE '!' 5 | -------------------------------------------------------------------------------- /source/database/query_builder/066.php: -------------------------------------------------------------------------------- 1 | orderBy('title', 'DESC'); 4 | // Produces: ORDER BY `title` DESC 5 | -------------------------------------------------------------------------------- /source/database/query_builder/067.php: -------------------------------------------------------------------------------- 1 | orderBy('title DESC, name ASC'); 4 | // Produces: ORDER BY `title` DESC, `name` ASC 5 | -------------------------------------------------------------------------------- /source/database/query_builder/068.php: -------------------------------------------------------------------------------- 1 | orderBy('title', 'DESC'); 4 | $builder->orderBy('name', 'ASC'); 5 | // Produces: ORDER BY `title` DESC, `name` ASC 6 | -------------------------------------------------------------------------------- /source/database/query_builder/070.php: -------------------------------------------------------------------------------- 1 | limit(10); 4 | // Produces: LIMIT 10 5 | -------------------------------------------------------------------------------- /source/database/query_builder/071.php: -------------------------------------------------------------------------------- 1 | limit(10, 20); 4 | // Produces: LIMIT 20, 10 (in MySQL. Other databases have slightly different syntax) 5 | -------------------------------------------------------------------------------- /source/database/query_builder/073.php: -------------------------------------------------------------------------------- 1 | countAllResults(false); // Produces an integer, like 17 4 | -------------------------------------------------------------------------------- /source/database/query_builder/074.php: -------------------------------------------------------------------------------- 1 | countAll(); // Produces an integer, like 25 4 | -------------------------------------------------------------------------------- /source/database/query_builder/083.php: -------------------------------------------------------------------------------- 1 | set('name', $name); 4 | $builder->insert(); 5 | // Produces: INSERT INTO mytable (`name`) VALUES ('{$name}') 6 | -------------------------------------------------------------------------------- /source/database/query_builder/084.php: -------------------------------------------------------------------------------- 1 | set('name', $name); 4 | $builder->set('title', $title); 5 | $builder->set('status', $status); 6 | $builder->insert(); 7 | -------------------------------------------------------------------------------- /source/database/query_builder/087.php: -------------------------------------------------------------------------------- 1 | set($object); 7 | $builder->insert(); 8 | -------------------------------------------------------------------------------- /source/database/query_builder/090.php: -------------------------------------------------------------------------------- 1 | update($data, 'id = 4'); 4 | -------------------------------------------------------------------------------- /source/database/query_builder/091.php: -------------------------------------------------------------------------------- 1 | update($data, ['id' => $id]); 4 | -------------------------------------------------------------------------------- /source/database/query_builder/093.php: -------------------------------------------------------------------------------- 1 | delete(['id' => $id]); 4 | // Produces: DELETE FROM mytable WHERE id = $id 5 | -------------------------------------------------------------------------------- /source/database/query_builder/095.php: -------------------------------------------------------------------------------- 1 | emptyTable('mytable'); 4 | // Produces: DELETE FROM mytable 5 | -------------------------------------------------------------------------------- /source/database/query_builder/096.php: -------------------------------------------------------------------------------- 1 | truncate(); 4 | /* 5 | * Produce: 6 | * TRUNCATE mytable 7 | */ 8 | -------------------------------------------------------------------------------- /source/database/query_builder/097.php: -------------------------------------------------------------------------------- 1 | select('title') 4 | ->where('id', $id) 5 | ->limit(10, 20) 6 | ->get(); 7 | -------------------------------------------------------------------------------- /source/database/query_builder/100.php: -------------------------------------------------------------------------------- 1 | 2 AND name != 'Accountant'"; 6 | $builder->where(new RawSql($sql)); 7 | -------------------------------------------------------------------------------- /source/database/query_builder/113.php: -------------------------------------------------------------------------------- 1 | upsert($object); 7 | -------------------------------------------------------------------------------- /source/database/results/006.php: -------------------------------------------------------------------------------- 1 | getRow(5); 4 | -------------------------------------------------------------------------------- /source/database/results/009.php: -------------------------------------------------------------------------------- 1 | getRowArray(5); 4 | -------------------------------------------------------------------------------- /source/database/results/016.php: -------------------------------------------------------------------------------- 1 | getRow(0, \App\Entities\User::class); 4 | -------------------------------------------------------------------------------- /source/database/results/017.php: -------------------------------------------------------------------------------- 1 | query('SELECT * FROM my_table'); 4 | 5 | echo $query->getFieldCount(); 6 | -------------------------------------------------------------------------------- /source/database/results/018.php: -------------------------------------------------------------------------------- 1 | query('SELECT * FROM my_table'); 4 | 5 | echo $query->getFieldNames(); 6 | -------------------------------------------------------------------------------- /source/database/results/019.php: -------------------------------------------------------------------------------- 1 | query('SELECT * FROM my_table'); 4 | 5 | echo $query->getNumRows(); 6 | -------------------------------------------------------------------------------- /source/database/transactions/002.php: -------------------------------------------------------------------------------- 1 | db->transStrict(false); 4 | -------------------------------------------------------------------------------- /source/database/transactions/004.php: -------------------------------------------------------------------------------- 1 | db->transOff(); 4 | $this->db->transStart(); 5 | $this->db->query('AN SQL QUERY...'); 6 | $this->db->transComplete(); 7 | -------------------------------------------------------------------------------- /source/database/transactions/005.php: -------------------------------------------------------------------------------- 1 | db->transStart(true); // Query will be rolled back 4 | $this->db->query('AN SQL QUERY...'); 5 | $this->db->transComplete(); 6 | -------------------------------------------------------------------------------- /source/database/transactions/009.php: -------------------------------------------------------------------------------- 1 | db->resetTransStatus(); 4 | -------------------------------------------------------------------------------- /source/database/utilities/002.php: -------------------------------------------------------------------------------- 1 | listDatabases(); 6 | 7 | foreach ($dbs as $db) { 8 | echo $db; 9 | } 10 | -------------------------------------------------------------------------------- /source/database/utilities/005.php: -------------------------------------------------------------------------------- 1 | databaseExists('database_name')) { 6 | // some code... 7 | } 8 | -------------------------------------------------------------------------------- /source/database/utilities/006.php: -------------------------------------------------------------------------------- 1 | optimizeTable('table_name')) { 6 | echo 'Success!'; 7 | } 8 | -------------------------------------------------------------------------------- /source/dbmgmt/forge/001.php: -------------------------------------------------------------------------------- 1 | myforge = \Config\Database::forge('other_db'); 4 | -------------------------------------------------------------------------------- /source/dbmgmt/forge/003.php: -------------------------------------------------------------------------------- 1 | createDatabase('my_db')) { 4 | echo 'Database created!'; 5 | } 6 | -------------------------------------------------------------------------------- /source/dbmgmt/forge/004.php: -------------------------------------------------------------------------------- 1 | createDatabase('my_db', true); 4 | /* 5 | * gives CREATE DATABASE IF NOT EXISTS `my_db` 6 | * or will check if a database exists 7 | */ 8 | -------------------------------------------------------------------------------- /source/dbmgmt/forge/005.php: -------------------------------------------------------------------------------- 1 | dropDatabase('my_db')) { 4 | echo 'Database deleted!'; 5 | } 6 | -------------------------------------------------------------------------------- /source/dbmgmt/forge/008.php: -------------------------------------------------------------------------------- 1 | addField("label varchar(100) NOT NULL DEFAULT 'default label'"); 4 | -------------------------------------------------------------------------------- /source/dbmgmt/forge/009.php: -------------------------------------------------------------------------------- 1 | addField('id'); 4 | // gives `id` INT(9) NOT NULL AUTO_INCREMENT 5 | -------------------------------------------------------------------------------- /source/dbmgmt/forge/014.php: -------------------------------------------------------------------------------- 1 | createTable('table_name'); 4 | // gives CREATE TABLE table_name 5 | -------------------------------------------------------------------------------- /source/dbmgmt/forge/015.php: -------------------------------------------------------------------------------- 1 | createTable('table_name', true); 4 | // creates table only if table does not exist 5 | -------------------------------------------------------------------------------- /source/dbmgmt/forge/018.php: -------------------------------------------------------------------------------- 1 | dropTable('table_name', false, true); 5 | -------------------------------------------------------------------------------- /source/dbmgmt/forge/019.php: -------------------------------------------------------------------------------- 1 | dropForeignKey('tablename', 'users_foreign'); 5 | -------------------------------------------------------------------------------- /source/dbmgmt/forge/021.php: -------------------------------------------------------------------------------- 1 | renameTable('old_table_name', 'new_table_name'); 4 | // gives ALTER TABLE `old_table_name` RENAME TO `new_table_name` 5 | -------------------------------------------------------------------------------- /source/dbmgmt/forge/024.php: -------------------------------------------------------------------------------- 1 | dropColumn('table_name', 'column_to_drop'); // to drop one single column 4 | -------------------------------------------------------------------------------- /source/dbmgmt/migration/004.php: -------------------------------------------------------------------------------- 1 | APPPATH, 5 | 'MyCompany' => ROOTPATH . 'MyCompany', 6 | ]; 7 | -------------------------------------------------------------------------------- /source/dbmgmt/migration/006.php: -------------------------------------------------------------------------------- 1 | regress(5); 4 | $migration->regress(-1); 5 | -------------------------------------------------------------------------------- /source/dbmgmt/migration/007.php: -------------------------------------------------------------------------------- 1 | setNamespace($namespace)->latest(); 4 | -------------------------------------------------------------------------------- /source/dbmgmt/migration/008.php: -------------------------------------------------------------------------------- 1 | setGroup($group)->latest(); 4 | -------------------------------------------------------------------------------- /source/dbmgmt/seeds/004.php: -------------------------------------------------------------------------------- 1 | call('TestSeeder'); 5 | -------------------------------------------------------------------------------- /source/extending/basecontroller/001.php: -------------------------------------------------------------------------------- 1 | cachePage($n); 4 | -------------------------------------------------------------------------------- /source/general/common_functions/001.php: -------------------------------------------------------------------------------- 1 | $user]; 4 | 5 | echo view('user_profile', $data); 6 | -------------------------------------------------------------------------------- /source/general/common_functions/007.php: -------------------------------------------------------------------------------- 1 | perPage; 6 | -------------------------------------------------------------------------------- /source/general/configuration/005.php: -------------------------------------------------------------------------------- 1 | find($id); 5 | } catch (\Exception $e) { 6 | exit($e->getMessage()); 7 | } 8 | -------------------------------------------------------------------------------- /source/general/errors/008.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /source/general/helpers/007.php: -------------------------------------------------------------------------------- 1 | aliases['menus'] = \App\Filters\MenusFilter::class; 4 | -------------------------------------------------------------------------------- /source/general/modules/006.php: -------------------------------------------------------------------------------- 1 | get('blog', '\Acme\Blog\Controllers\Blog::index'); 5 | -------------------------------------------------------------------------------- /source/general/modules/007.php: -------------------------------------------------------------------------------- 1 | group('blog', ['namespace' => 'Acme\Blog\Controllers'], static function ($routes) { 4 | $routes->get('/', 'Blog::index'); 5 | }); 6 | -------------------------------------------------------------------------------- /source/general/modules/008.php: -------------------------------------------------------------------------------- 1 | SORT_ASC, 5 | 'position' => SORT_ASC, 6 | ]); 7 | -------------------------------------------------------------------------------- /source/helpers/cookie_helper/001.php: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /source/helpers/form_helper/003.php: -------------------------------------------------------------------------------- 1 | 'email', 'id' => 'myform']; 4 | echo form_open('email/send', $attributes); 5 | -------------------------------------------------------------------------------- /source/helpers/form_helper/006.php: -------------------------------------------------------------------------------- 1 | 'my-id']); 4 | -------------------------------------------------------------------------------- /source/helpers/form_helper/008.php: -------------------------------------------------------------------------------- 1 | 'Joe', 'member_id' => '234']; 4 | echo form_open('email/send', '', $hidden); 5 | -------------------------------------------------------------------------------- /source/helpers/form_helper/009.php: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /source/helpers/form_helper/013.php: -------------------------------------------------------------------------------- 1 | 7 | */ 8 | -------------------------------------------------------------------------------- /source/helpers/form_helper/019.php: -------------------------------------------------------------------------------- 1 | '; 4 | echo form_fieldset_close($string); 5 | // Would produce: 6 | -------------------------------------------------------------------------------- /source/helpers/form_helper/026.php: -------------------------------------------------------------------------------- 1 | 'some_function();']; 4 | echo form_checkbox('newsletter', 'accept', true, $js); 5 | -------------------------------------------------------------------------------- /source/helpers/form_helper/028.php: -------------------------------------------------------------------------------- 1 | What is your Name 5 | -------------------------------------------------------------------------------- /source/helpers/form_helper/030.php: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /source/helpers/form_helper/031.php: -------------------------------------------------------------------------------- 1 | Content 5 | -------------------------------------------------------------------------------- /source/helpers/form_helper/033.php: -------------------------------------------------------------------------------- 1 | '; 4 | echo form_close($string); 5 | // Would produce: 6 | -------------------------------------------------------------------------------- /source/helpers/html_helper/001.php: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /source/helpers/html_helper/003.php: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /source/helpers/html_helper/005.php: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /source/helpers/html_helper/010.php: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /source/helpers/html_helper/015.php: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /source/helpers/html_helper/016.php: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /source/helpers/html_helper/018.php: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /source/helpers/inflector_helper/001.php: -------------------------------------------------------------------------------- 1 | "Is your name O'reilly?", 5 | 'answer' => "No, my name is O'connor.", 6 | ]; 7 | -------------------------------------------------------------------------------- /source/helpers/text_helper/009.php: -------------------------------------------------------------------------------- 1 | 'Mail me']; 4 | echo mailto('me@my-site.com', 'Contact Me', $attributes); 5 | -------------------------------------------------------------------------------- /source/helpers/url_helper/013.php: -------------------------------------------------------------------------------- 1 | Here is a paragraph & an entity ({).

'; 4 | $string = xml_convert($string); 5 | echo $string; 6 | -------------------------------------------------------------------------------- /source/images/appflowchart.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/appflowchart.gif -------------------------------------------------------------------------------- /source/images/arrow.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/arrow.gif -------------------------------------------------------------------------------- /source/images/ci-icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/ci-icon.ico -------------------------------------------------------------------------------- /source/images/ci_logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/ci_logo.jpg -------------------------------------------------------------------------------- /source/images/ci_logo_flame.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/ci_logo_flame.jpg -------------------------------------------------------------------------------- /source/images/debugbar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/debugbar.png -------------------------------------------------------------------------------- /source/images/error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/error.png -------------------------------------------------------------------------------- /source/images/file.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/file.gif -------------------------------------------------------------------------------- /source/images/folder.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/folder.gif -------------------------------------------------------------------------------- /source/images/smile.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/smile.gif -------------------------------------------------------------------------------- /source/images/tutorial0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/tutorial0.png -------------------------------------------------------------------------------- /source/images/tutorial1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/tutorial1.png -------------------------------------------------------------------------------- /source/images/tutorial2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/tutorial2.png -------------------------------------------------------------------------------- /source/images/tutorial3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/tutorial3.png -------------------------------------------------------------------------------- /source/images/tutorial4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/tutorial4.png -------------------------------------------------------------------------------- /source/images/tutorial9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/tutorial9.png -------------------------------------------------------------------------------- /source/images/welcome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodeIgniter-Chinese/codeigniter4-user-guide/916b729fd0126323cdf2399f7725f181a0ebbf01/source/images/welcome.png -------------------------------------------------------------------------------- /source/incoming/auto_routing_improved/009.php: -------------------------------------------------------------------------------- 1 | negotiate('media', ['foo', 'bar']); 4 | -------------------------------------------------------------------------------- /source/incoming/content_negotiation/004.php: -------------------------------------------------------------------------------- 1 | negotiate('media', $supported, true); 4 | // or 5 | $format = $negotiate->media($supported, true); 6 | -------------------------------------------------------------------------------- /source/incoming/content_negotiation/006.php: -------------------------------------------------------------------------------- 1 | negotiate('encoding', ['gzip']); 4 | // or 5 | $type = $negotiate->encoding(['gzip']); 6 | -------------------------------------------------------------------------------- /source/incoming/content_negotiation/007.php: -------------------------------------------------------------------------------- 1 | negotiate('charset', ['utf-8']); 4 | // or 5 | $charset = $negotiate->charset(['utf-8']); 6 | -------------------------------------------------------------------------------- /source/incoming/controllers/001.php: -------------------------------------------------------------------------------- 1 | request->isSecure()) { 4 | $this->forceHTTPS(); 5 | } 6 | -------------------------------------------------------------------------------- /source/incoming/controllers/003.php: -------------------------------------------------------------------------------- 1 | request->isSecure()) { 4 | $this->forceHTTPS(31536000); // one year 5 | } 6 | -------------------------------------------------------------------------------- /source/incoming/controllers/009.php: -------------------------------------------------------------------------------- 1 | get('/', 'Home::index'); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/002.php: -------------------------------------------------------------------------------- 1 | getMethod(); 5 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/006.php: -------------------------------------------------------------------------------- 1 | isSecure()) { 4 | force_https(); 5 | } 6 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/007.php: -------------------------------------------------------------------------------- 1 | getPost('foo'); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/009.php: -------------------------------------------------------------------------------- 1 | getJSON(); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/012.php: -------------------------------------------------------------------------------- 1 | getRawInput(); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/014.php: -------------------------------------------------------------------------------- 1 | getPost('email', FILTER_SANITIZE_EMAIL); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/017.php: -------------------------------------------------------------------------------- 1 | hasHeader('DNT')) { 4 | // Don't track something... 5 | } 6 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/018.php: -------------------------------------------------------------------------------- 1 | getHeaderLine('accept-encoding'); 5 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/019.php: -------------------------------------------------------------------------------- 1 | getUri(); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/023.php: -------------------------------------------------------------------------------- 1 | getFiles(); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/024.php: -------------------------------------------------------------------------------- 1 | getFile('userfile'); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/025.php: -------------------------------------------------------------------------------- 1 | getFileMultiple('userfile'); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/032.php: -------------------------------------------------------------------------------- 1 | getPostGet('field1'); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/033.php: -------------------------------------------------------------------------------- 1 | getGetPost('field1'); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/034.php: -------------------------------------------------------------------------------- 1 | getCookie('some_cookie'); 4 | $request->getCookie('some_cookie', FILTER_SANITIZE_FULL_SPECIAL_CHARS); // with filter 5 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/035.php: -------------------------------------------------------------------------------- 1 | getCookie(['some_cookie', 'some_cookie2']); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/036.php: -------------------------------------------------------------------------------- 1 | getServer('some_data'); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/037.php: -------------------------------------------------------------------------------- 1 | getServer(['SERVER_PROTOCOL', 'REQUEST_URI']); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/038.php: -------------------------------------------------------------------------------- 1 | getUserAgent(); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/041.php: -------------------------------------------------------------------------------- 1 | getGet('some_data'); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/042.php: -------------------------------------------------------------------------------- 1 | getGet('some_data', FILTER_SANITIZE_FULL_SPECIAL_CHARS); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/043.php: -------------------------------------------------------------------------------- 1 | getGet(null, FILTER_SANITIZE_FULL_SPECIAL_CHARS); 4 | // returns all GET items with string sanitation 5 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/044.php: -------------------------------------------------------------------------------- 1 | getGet(['field1', 'field2']); 4 | -------------------------------------------------------------------------------- /source/incoming/incomingrequest/045.php: -------------------------------------------------------------------------------- 1 | getGet(['field1', 'field2'], FILTER_SANITIZE_FULL_SPECIAL_CHARS); 4 | -------------------------------------------------------------------------------- /source/incoming/message/001.php: -------------------------------------------------------------------------------- 1 | getBody(); 4 | -------------------------------------------------------------------------------- /source/incoming/message/002.php: -------------------------------------------------------------------------------- 1 | header('HOST'); 5 | $message->header('Host'); 6 | $message->header('host'); 7 | -------------------------------------------------------------------------------- /source/incoming/message/004.php: -------------------------------------------------------------------------------- 1 | header('Document-URI', FILTER_SANITIZE_URL); 4 | -------------------------------------------------------------------------------- /source/incoming/message/005.php: -------------------------------------------------------------------------------- 1 | getHeaderLine('Accept-Language'); 4 | /* 5 | * Outputs: 6 | * 'en,en-US' 7 | */ 8 | -------------------------------------------------------------------------------- /source/incoming/message/006.php: -------------------------------------------------------------------------------- 1 | setHeader('Host', 'codeigniter.com'); 4 | -------------------------------------------------------------------------------- /source/incoming/message/007.php: -------------------------------------------------------------------------------- 1 | removeHeader('Host'); 4 | -------------------------------------------------------------------------------- /source/incoming/message/008.php: -------------------------------------------------------------------------------- 1 | appendHeader('Accept-Language', 'en-US; q=0.8'); 4 | -------------------------------------------------------------------------------- /source/incoming/message/009.php: -------------------------------------------------------------------------------- 1 | prependHeader('Accept-Language', 'en,'); 4 | -------------------------------------------------------------------------------- /source/incoming/message/010.php: -------------------------------------------------------------------------------- 1 | setProtocolVersion('1.1'); 4 | -------------------------------------------------------------------------------- /source/incoming/message/011.php: -------------------------------------------------------------------------------- 1 | addHeader('Set-Cookie', 'logged_in=no; Path=/'); 4 | $message->addHeader('Set-Cookie', 'sessid=123456; Path=/'); 5 | -------------------------------------------------------------------------------- /source/incoming/request/001.php: -------------------------------------------------------------------------------- 1 | getIPAddress(); 4 | -------------------------------------------------------------------------------- /source/incoming/request/002.php: -------------------------------------------------------------------------------- 1 | isValidIP($ip)) { 4 | echo 'Not Valid'; 5 | } else { 6 | echo 'Valid'; 7 | } 8 | -------------------------------------------------------------------------------- /source/incoming/request/003.php: -------------------------------------------------------------------------------- 1 | getMethod(); // Outputs: POST 4 | -------------------------------------------------------------------------------- /source/incoming/request/004.php: -------------------------------------------------------------------------------- 1 | getServer('some_data'); 4 | -------------------------------------------------------------------------------- /source/incoming/request/005.php: -------------------------------------------------------------------------------- 1 | getServer(['SERVER_PROTOCOL', 'REQUEST_URI']); 4 | -------------------------------------------------------------------------------- /source/incoming/request/006.php: -------------------------------------------------------------------------------- 1 | getEnv('some_data'); 4 | -------------------------------------------------------------------------------- /source/incoming/request/007.php: -------------------------------------------------------------------------------- 1 | getEnv(['CI_ENVIRONMENT', 'S3_BUCKET']); 4 | -------------------------------------------------------------------------------- /source/incoming/restful/004.php: -------------------------------------------------------------------------------- 1 | resource('photos', ['placeholder' => '(:num)']); 4 | 5 | // Generates routes like: 6 | $routes->get('photos/(:num)', 'Photos::show/$1'); 7 | -------------------------------------------------------------------------------- /source/incoming/restful/005.php: -------------------------------------------------------------------------------- 1 | resource('photos', ['only' => ['index', 'show']]); 4 | -------------------------------------------------------------------------------- /source/incoming/restful/006.php: -------------------------------------------------------------------------------- 1 | resource('photos', ['except' => 'new,edit']); 4 | -------------------------------------------------------------------------------- /source/incoming/restful/008.php: -------------------------------------------------------------------------------- 1 | resource('photos'); 4 | -------------------------------------------------------------------------------- /source/incoming/restful/010.php: -------------------------------------------------------------------------------- 1 | resource('api/photo'); 4 | $routes->presenter('admin/photos'); 5 | -------------------------------------------------------------------------------- /source/incoming/restful/012.php: -------------------------------------------------------------------------------- 1 | presenter('photos', ['placeholder' => '(:num)']); 4 | 5 | // Generates routes like: 6 | $routes->get('photos/(:num)', 'Photos::show/$1'); 7 | -------------------------------------------------------------------------------- /source/incoming/restful/013.php: -------------------------------------------------------------------------------- 1 | presenter('photos', ['only' => ['index', 'show']]); 4 | -------------------------------------------------------------------------------- /source/incoming/restful/014.php: -------------------------------------------------------------------------------- 1 | presenter('photos', ['except' => 'new,edit']); 4 | -------------------------------------------------------------------------------- /source/incoming/restful/016.php: -------------------------------------------------------------------------------- 1 | presenter('photos'); 4 | -------------------------------------------------------------------------------- /source/incoming/restful/017.php: -------------------------------------------------------------------------------- 1 | resource('photos', ['controller' => '\App\Gallery']); 4 | // Would create routes like: 5 | $routes->get('photos', '\App\Gallery::index'); 6 | -------------------------------------------------------------------------------- /source/incoming/restful/019.php: -------------------------------------------------------------------------------- 1 | presenter('photos', ['controller' => '\App\Gallery']); 4 | // Would create routes like: 5 | $routes->get('photos', '\App\Gallery::index'); 6 | -------------------------------------------------------------------------------- /source/incoming/routing/001.php: -------------------------------------------------------------------------------- 1 | get('/', 'Home::index'); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/004.php: -------------------------------------------------------------------------------- 1 | match(['GET', 'PUT'], 'products', 'Product::feature'); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/005.php: -------------------------------------------------------------------------------- 1 | get('product/(:num)', 'Catalog::productLookup'); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/006.php: -------------------------------------------------------------------------------- 1 | get('journals', 'Blogs'); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/007.php: -------------------------------------------------------------------------------- 1 | get('blog/joe', 'Blogs::users/34'); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/008.php: -------------------------------------------------------------------------------- 1 | get('product/(:segment)', 'Catalog::productLookup'); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/009.php: -------------------------------------------------------------------------------- 1 | get('product/(:num)', 'Catalog::productLookupByID/$1'); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/010.php: -------------------------------------------------------------------------------- 1 | get('product/(:any)', 'Catalog::productLookup/$1'); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/012.php: -------------------------------------------------------------------------------- 1 | get('product/(:segment)', 'Catalog::productLookup/$1'); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/013.php: -------------------------------------------------------------------------------- 1 | get('/', [\App\Controllers\Home::class, 'index']); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/014.php: -------------------------------------------------------------------------------- 1 | get('/', [Home::class, 'index']); 6 | -------------------------------------------------------------------------------- /source/incoming/routing/018.php: -------------------------------------------------------------------------------- 1 | get('products/([a-z]+)/(\d+)', 'Products::show/$1/id_$2'); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/019.php: -------------------------------------------------------------------------------- 1 | get('login/(.+)', 'Auth::login/$1'); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/024.php: -------------------------------------------------------------------------------- 1 | group('api', ['namespace' => 'App\API\v1'], static function ($routes) { 4 | $routes->resource('users'); 5 | }); 6 | -------------------------------------------------------------------------------- /source/incoming/routing/025.php: -------------------------------------------------------------------------------- 1 | group('api', ['filter' => 'api-auth'], static function ($routes) { 4 | $routes->resource('users'); 5 | }); 6 | -------------------------------------------------------------------------------- /source/incoming/routing/028.php: -------------------------------------------------------------------------------- 1 | environment('development', static function ($routes) { 4 | $routes->get('builder', 'Tools\Builder::index'); 5 | }); 6 | -------------------------------------------------------------------------------- /source/incoming/routing/031.php: -------------------------------------------------------------------------------- 1 | add('products', 'Product::feature'); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/032.php: -------------------------------------------------------------------------------- 1 | cli('migrate', 'App\Database::migrate'); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/034.php: -------------------------------------------------------------------------------- 1 | get('admin', ' AdminController::index', ['filter' => 'admin-auth']); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/035.php: -------------------------------------------------------------------------------- 1 | post('users/delete/(:segment)', 'AdminController::index', ['filter' => 'admin-auth:dual,noreturn']); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/036.php: -------------------------------------------------------------------------------- 1 | get('admin', ' AdminController::index', ['filter' => \App\Filters\SomeFilter::class]); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/037.php: -------------------------------------------------------------------------------- 1 | get('admin', ' AdminController::index', ['filter' => ['admin-auth', \App\Filters\SomeFilter::class]]); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/038.php: -------------------------------------------------------------------------------- 1 | get('admin/users', 'Users::index', ['namespace' => 'Admin']); 5 | -------------------------------------------------------------------------------- /source/incoming/routing/039.php: -------------------------------------------------------------------------------- 1 | get('from', 'to', ['hostname' => 'accounts.example.com']); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/040.php: -------------------------------------------------------------------------------- 1 | get('from', 'to', ['subdomain' => 'media']); 5 | -------------------------------------------------------------------------------- /source/incoming/routing/041.php: -------------------------------------------------------------------------------- 1 | get('from', 'to', ['subdomain' => '*']); 5 | -------------------------------------------------------------------------------- /source/incoming/routing/042.php: -------------------------------------------------------------------------------- 1 | get('users/(:num)', 'users/show/$1', ['offset' => 1]); 4 | 5 | // Creates: 6 | $routes['users/(:num)'] = 'users/show/$2'; 7 | -------------------------------------------------------------------------------- /source/incoming/routing/044.php: -------------------------------------------------------------------------------- 1 | setPrioritize(false); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/063.php: -------------------------------------------------------------------------------- 1 | post('api/users', 'Api\Users::update'); 5 | -------------------------------------------------------------------------------- /source/incoming/routing/064.php: -------------------------------------------------------------------------------- 1 | get('blog', '\Acme\Blog\Controllers\Home::list'); 5 | -------------------------------------------------------------------------------- /source/incoming/routing/065.php: -------------------------------------------------------------------------------- 1 | view('about', 'pages/about'); 5 | -------------------------------------------------------------------------------- /source/incoming/routing/067.php: -------------------------------------------------------------------------------- 1 | add('users/delete/(:segment)', 'AdminController::index', ['filter' => 'admin-auth:dual,noreturn']); 4 | -------------------------------------------------------------------------------- /source/incoming/routing/073.php: -------------------------------------------------------------------------------- 1 | get('from', 'to', ['hostname' => ['s1.example.com', 's2.example.com']]); 4 | -------------------------------------------------------------------------------- /source/installation/upgrade_responses/001.php: -------------------------------------------------------------------------------- 1 | response->setStatusCode(404); 4 | 5 | // ... 6 | 7 | return $this->response->setJSON(['foo' => 'bar']); 8 | -------------------------------------------------------------------------------- /source/installation/upgrade_sessions/ci3sample/001.php: -------------------------------------------------------------------------------- 1 | load->library('session'); 4 | 5 | $_SESSION['item']; 6 | $this->session->item; 7 | $this->session->userdata('item'); 8 | -------------------------------------------------------------------------------- /source/libraries/caching/002.php: -------------------------------------------------------------------------------- 1 | get('foo'); 6 | -------------------------------------------------------------------------------- /source/libraries/caching/003.php: -------------------------------------------------------------------------------- 1 | get('my_cached_item'); 4 | -------------------------------------------------------------------------------- /source/libraries/caching/004.php: -------------------------------------------------------------------------------- 1 | save('cache_item_id', 'data_to_cache'); 4 | -------------------------------------------------------------------------------- /source/libraries/caching/005.php: -------------------------------------------------------------------------------- 1 | delete('cache_item_id'); 4 | -------------------------------------------------------------------------------- /source/libraries/caching/009.php: -------------------------------------------------------------------------------- 1 | clean(); 4 | -------------------------------------------------------------------------------- /source/libraries/caching/010.php: -------------------------------------------------------------------------------- 1 | getCacheInfo()); 4 | -------------------------------------------------------------------------------- /source/libraries/caching/011.php: -------------------------------------------------------------------------------- 1 | getMetadata('my_cached_item')); 4 | -------------------------------------------------------------------------------- /source/libraries/caching/012.php: -------------------------------------------------------------------------------- 1 | getCookieStore(); 4 | -------------------------------------------------------------------------------- /source/libraries/cookies/011.php: -------------------------------------------------------------------------------- 1 | get('unknown_cookie'); 5 | -------------------------------------------------------------------------------- /source/libraries/cookies/012.php: -------------------------------------------------------------------------------- 1 | get('unknown_cookie'); // null 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/003.php: -------------------------------------------------------------------------------- 1 | 'http://example.com/api/v1/', 5 | 'timeout' => 3, 6 | ]; 7 | $client = service('curlrequest', $options); 8 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/009.php: -------------------------------------------------------------------------------- 1 | getStatusCode(); // 200 4 | $reason = $response->getReasonPhrase(); // OK 5 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/011.php: -------------------------------------------------------------------------------- 1 | getBody(); 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/012.php: -------------------------------------------------------------------------------- 1 | header('content-type'), 'application/json')) { 4 | $body = json_decode($body); 5 | } 6 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/013.php: -------------------------------------------------------------------------------- 1 | request('GET', 'http://example.com', ['allow_redirects' => false]); 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/016.php: -------------------------------------------------------------------------------- 1 | request('GET', 'http://example.com', ['auth' => ['username', 'password', 'digest']]); 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/017.php: -------------------------------------------------------------------------------- 1 | setBody($body)->request('PUT', 'http://example.com'); 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/018.php: -------------------------------------------------------------------------------- 1 | request('PUT', 'http://example.com', ['body' => $body]); 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/019.php: -------------------------------------------------------------------------------- 1 | request('GET', '/', ['cert' => ['/path/server.pem', 'password']]); 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/020.php: -------------------------------------------------------------------------------- 1 | request('GET', 'http://example.com', ['connect_timeout' => 0]); 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/021.php: -------------------------------------------------------------------------------- 1 | request('GET', 'http://example.com', ['cookie' => WRITEPATH . 'CookieSaver.txt']); 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/022.php: -------------------------------------------------------------------------------- 1 | request('GET', 'http://example.com', ['debug' => '/usr/local/curl_log.txt']); 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/023.php: -------------------------------------------------------------------------------- 1 | request('GET', 'http://example.com', ['delay' => 2000]); 5 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/027.php: -------------------------------------------------------------------------------- 1 | request('PUT', '/put', ['json' => ['foo' => 'bar']]); 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/029.php: -------------------------------------------------------------------------------- 1 | request('GET', '/get', ['query' => ['foo' => 'bar']]); 5 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/030.php: -------------------------------------------------------------------------------- 1 | request('GET', 'http://example.com', ['timeout' => 5]); 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/031.php: -------------------------------------------------------------------------------- 1 | request('GET', 'http://example.com', ['user_agent' => 'CodeIgniter Framework v4']); 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/033.php: -------------------------------------------------------------------------------- 1 | request('GET', '/', ['version' => 1.0]); 5 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/034.php: -------------------------------------------------------------------------------- 1 | request('GET', 'http://example.com', ['debug' => true]); 4 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/035.php: -------------------------------------------------------------------------------- 1 | request( 4 | 'GET', 5 | 'http://example.com', 6 | ['proxy' => 'http://localhost:3128'], 7 | ); 8 | -------------------------------------------------------------------------------- /source/libraries/curlrequest/036.php: -------------------------------------------------------------------------------- 1 | request('GET', '/', ['force_ip_resolve' => 'v4']); // v4 or v6 5 | -------------------------------------------------------------------------------- /source/libraries/email/003.php: -------------------------------------------------------------------------------- 1 | setFrom('you@example.com', 'Your Name'); 4 | -------------------------------------------------------------------------------- /source/libraries/email/004.php: -------------------------------------------------------------------------------- 1 | setFrom('you@example.com', 'Your Name', 'returned_emails@example.com'); 4 | -------------------------------------------------------------------------------- /source/libraries/email/005.php: -------------------------------------------------------------------------------- 1 | setReplyTo('you@example.com', 'Your Name'); 4 | -------------------------------------------------------------------------------- /source/libraries/email/006.php: -------------------------------------------------------------------------------- 1 | setTo('someone@example.com'); 4 | -------------------------------------------------------------------------------- /source/libraries/email/007.php: -------------------------------------------------------------------------------- 1 | setTo('one@example.com, two@example.com, three@example.com'); 4 | -------------------------------------------------------------------------------- /source/libraries/email/008.php: -------------------------------------------------------------------------------- 1 | setTo(['one@example.com', 'two@example.com', 'three@example.com']); 4 | -------------------------------------------------------------------------------- /source/libraries/email/009.php: -------------------------------------------------------------------------------- 1 | setSubject('This is my subject'); 4 | -------------------------------------------------------------------------------- /source/libraries/email/010.php: -------------------------------------------------------------------------------- 1 | setMessage('This is my message'); 4 | -------------------------------------------------------------------------------- /source/libraries/email/011.php: -------------------------------------------------------------------------------- 1 | setAltMessage('This is the alternative message'); 4 | -------------------------------------------------------------------------------- /source/libraries/email/012.php: -------------------------------------------------------------------------------- 1 | setHeader('Header1', 'Value1'); 4 | $email->setHeader('Header2', 'Value2'); 5 | -------------------------------------------------------------------------------- /source/libraries/email/014.php: -------------------------------------------------------------------------------- 1 | clear(true); 4 | -------------------------------------------------------------------------------- /source/libraries/email/015.php: -------------------------------------------------------------------------------- 1 | send()) { 4 | // Generate error 5 | } 6 | -------------------------------------------------------------------------------- /source/libraries/email/016.php: -------------------------------------------------------------------------------- 1 | send(false)) { 4 | // Parameters won't be cleared 5 | } 6 | -------------------------------------------------------------------------------- /source/libraries/email/017.php: -------------------------------------------------------------------------------- 1 | attach('/path/to/photo1.jpg'); 4 | $email->attach('/path/to/photo2.jpg'); 5 | $email->attach('/path/to/photo3.jpg'); 6 | -------------------------------------------------------------------------------- /source/libraries/email/018.php: -------------------------------------------------------------------------------- 1 | attach('image.jpg', 'inline'); 4 | -------------------------------------------------------------------------------- /source/libraries/email/019.php: -------------------------------------------------------------------------------- 1 | attach('http://example.com/filename.pdf'); 4 | -------------------------------------------------------------------------------- /source/libraries/email/020.php: -------------------------------------------------------------------------------- 1 | attach('filename.pdf', 'attachment', 'report.pdf'); 4 | -------------------------------------------------------------------------------- /source/libraries/email/021.php: -------------------------------------------------------------------------------- 1 | attach($buffer, 'attachment', 'report.pdf', 'application/pdf'); 4 | -------------------------------------------------------------------------------- /source/libraries/encryption/001.php: -------------------------------------------------------------------------------- 1 | encrypt($plaintext)); 5 | -------------------------------------------------------------------------------- /source/libraries/encryption/010.php: -------------------------------------------------------------------------------- 1 | initialize(['cipher' => 'AES-256-CTR']); 4 | -------------------------------------------------------------------------------- /source/libraries/files/001.php: -------------------------------------------------------------------------------- 1 | getRandomName(); 5 | -------------------------------------------------------------------------------- /source/libraries/files/004.php: -------------------------------------------------------------------------------- 1 | getSize(); // 256901 4 | -------------------------------------------------------------------------------- /source/libraries/files/006.php: -------------------------------------------------------------------------------- 1 | getMimeType(); 4 | 5 | echo $type; // image/png 6 | -------------------------------------------------------------------------------- /source/libraries/files/007.php: -------------------------------------------------------------------------------- 1 | guessExtension(); 5 | -------------------------------------------------------------------------------- /source/libraries/files/008.php: -------------------------------------------------------------------------------- 1 | move(WRITEPATH . 'uploads'); 4 | -------------------------------------------------------------------------------- /source/libraries/files/009.php: -------------------------------------------------------------------------------- 1 | getRandomName(); 4 | $file->move(WRITEPATH . 'uploads', $newName); 5 | -------------------------------------------------------------------------------- /source/libraries/files/010.php: -------------------------------------------------------------------------------- 1 | move(WRITEPATH . 'uploads'); 4 | -------------------------------------------------------------------------------- /source/libraries/files/012.php: -------------------------------------------------------------------------------- 1 | removeFile(APPPATH . 'Filters/DevelopToolbar.php'); 4 | 5 | $files->removePattern('#\.gitkeep#'); 6 | $files->retainPattern('*.php'); 7 | -------------------------------------------------------------------------------- /source/libraries/files/016.php: -------------------------------------------------------------------------------- 1 | retainMultiplePatterns(['*.css', '*.js']); // Would keep only *.css and *.js files 4 | -------------------------------------------------------------------------------- /source/libraries/images/001.php: -------------------------------------------------------------------------------- 1 | withFile('/path/to/image/mypic.jpg') 4 | ->fit(100, 100, 'center') 5 | ->save('/path/to/image/mypic_thumb.jpg'); 6 | -------------------------------------------------------------------------------- /source/libraries/images/005.php: -------------------------------------------------------------------------------- 1 | withFile('/path/to/image/mypic.jpg') 4 | // processing methods 5 | ->save('/path/to/image/my_low_quality_pic.jpg', 10); 6 | -------------------------------------------------------------------------------- /source/libraries/images/006.php: -------------------------------------------------------------------------------- 1 | withFile('/path/to/image/mypic.jpg') 4 | ->withResource() 5 | ->save('/path/to/image/my_low_quality_pic.jpg', 10); 6 | -------------------------------------------------------------------------------- /source/libraries/images/009.php: -------------------------------------------------------------------------------- 1 | withFile('/path/to/image/mypic.jpg') 5 | ->convert(IMAGETYPE_PNG) 6 | ->save('/path/to/new/image.png'); 7 | -------------------------------------------------------------------------------- /source/libraries/images/012.php: -------------------------------------------------------------------------------- 1 | withFile('/path/to/image/mypic.jpg') 5 | ->flip('horizontal') 6 | ->save('/path/to/new/image.jpg'); 7 | -------------------------------------------------------------------------------- /source/libraries/pagination/001.php: -------------------------------------------------------------------------------- 1 | paginate(10, 'group1', null, $segment); 4 | -------------------------------------------------------------------------------- /source/libraries/pagination/008.php: -------------------------------------------------------------------------------- 1 | links(); 4 | // Page 3 link: https://domain.tld?search=foo&order=asc&hello=i+am+here&page=3 5 | -------------------------------------------------------------------------------- /source/libraries/pagination/009.php: -------------------------------------------------------------------------------- 1 | only(['search', 'order'])->links(); 4 | // Page 3 link: https://domain.tld?search=foo&order=asc&page=3 5 | -------------------------------------------------------------------------------- /source/libraries/pagination/013.php: -------------------------------------------------------------------------------- 1 | false, 5 | 'uri' => 'https://example.com/foo?page=2', 6 | 'title' => 1, 7 | ]; 8 | -------------------------------------------------------------------------------- /source/libraries/publisher/001.php: -------------------------------------------------------------------------------- 1 | addUri('https://example.com/feeds/daily_photo.jpg')->copy(true); 4 | -------------------------------------------------------------------------------- /source/libraries/publisher/016.php: -------------------------------------------------------------------------------- 1 | sanitizeFilename($request->getVar('filepath')); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/001.php: -------------------------------------------------------------------------------- 1 | close(); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/004.php: -------------------------------------------------------------------------------- 1 | get('item'); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/006.php: -------------------------------------------------------------------------------- 1 | item; 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/007.php: -------------------------------------------------------------------------------- 1 | name; 8 | 9 | // or: 10 | 11 | $name = $session->get('name'); 12 | -------------------------------------------------------------------------------- /source/libraries/sessions/009.php: -------------------------------------------------------------------------------- 1 | get(); 6 | -------------------------------------------------------------------------------- /source/libraries/sessions/010.php: -------------------------------------------------------------------------------- 1 | set($array); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/012.php: -------------------------------------------------------------------------------- 1 | set('some_name', 'some_value'); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/014.php: -------------------------------------------------------------------------------- 1 | has('some_name'); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/015.php: -------------------------------------------------------------------------------- 1 | push('hobbies', ['sport' => 'tennis']); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/016.php: -------------------------------------------------------------------------------- 1 | remove('some_name'); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/018.php: -------------------------------------------------------------------------------- 1 | remove($array_items); 5 | -------------------------------------------------------------------------------- /source/libraries/sessions/019.php: -------------------------------------------------------------------------------- 1 | markAsFlashdata('item'); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/020.php: -------------------------------------------------------------------------------- 1 | markAsFlashdata(['item', 'item2']); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/021.php: -------------------------------------------------------------------------------- 1 | markAsFlashdata('item'); 5 | -------------------------------------------------------------------------------- /source/libraries/sessions/022.php: -------------------------------------------------------------------------------- 1 | setFlashdata('item', 'value'); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/023.php: -------------------------------------------------------------------------------- 1 | getFlashdata('item'); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/025.php: -------------------------------------------------------------------------------- 1 | getFlashdata(); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/026.php: -------------------------------------------------------------------------------- 1 | keepFlashdata('item'); 4 | $session->keepFlashdata(['item1', 'item2', 'item3']); 5 | -------------------------------------------------------------------------------- /source/libraries/sessions/027.php: -------------------------------------------------------------------------------- 1 | markAsTempdata('item', 300); 5 | -------------------------------------------------------------------------------- /source/libraries/sessions/029.php: -------------------------------------------------------------------------------- 1 | markAsTempdata('item', 300); // Expire in 5 minutes 5 | -------------------------------------------------------------------------------- /source/libraries/sessions/030.php: -------------------------------------------------------------------------------- 1 | setTempdata('item', 'value', 300); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/031.php: -------------------------------------------------------------------------------- 1 | true, 'message' => 'Thanks for joining!']; 4 | $session->setTempdata($tempdata, null, $expire); 5 | -------------------------------------------------------------------------------- /source/libraries/sessions/032.php: -------------------------------------------------------------------------------- 1 | getTempdata('item'); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/034.php: -------------------------------------------------------------------------------- 1 | getTempdata(); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/035.php: -------------------------------------------------------------------------------- 1 | removeTempdata('item'); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/037.php: -------------------------------------------------------------------------------- 1 | destroy(); 4 | -------------------------------------------------------------------------------- /source/libraries/sessions/044.php: -------------------------------------------------------------------------------- 1 | close(); 4 | -------------------------------------------------------------------------------- /source/libraries/throttler/001.php: -------------------------------------------------------------------------------- 1 | check($name, 60, MINUTE); 5 | -------------------------------------------------------------------------------- /source/libraries/time/002.php: -------------------------------------------------------------------------------- 1 | getAge(); // 5 8 | echo $time->age; // 5 9 | -------------------------------------------------------------------------------- /source/libraries/time/024.php: -------------------------------------------------------------------------------- 1 | getLocal(); // true 6 | echo Time::now('Europe/London')->local; // false 7 | -------------------------------------------------------------------------------- /source/libraries/time/025.php: -------------------------------------------------------------------------------- 1 | getUtc(); // false 6 | echo Time::now('UTC')->utc; // true 7 | -------------------------------------------------------------------------------- /source/libraries/time/033.php: -------------------------------------------------------------------------------- 1 | equals('January 11, 2017 03:50:00', 'Europe/London'); // true 4 | -------------------------------------------------------------------------------- /source/libraries/time/036.php: -------------------------------------------------------------------------------- 1 | isBefore('March 15, 2013', 'America/Chicago'); // false 4 | -------------------------------------------------------------------------------- /source/libraries/typography/001.php: -------------------------------------------------------------------------------- 1 | autoTypography($string); 4 | -------------------------------------------------------------------------------- /source/libraries/typography/003.php: -------------------------------------------------------------------------------- 1 | formatCharacters($string); 4 | -------------------------------------------------------------------------------- /source/libraries/typography/004.php: -------------------------------------------------------------------------------- 1 | nl2brExceptPre($string); 4 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/003.php: -------------------------------------------------------------------------------- 1 | request->getFiles(); 4 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/004.php: -------------------------------------------------------------------------------- 1 | request->getFile('userfile'); 4 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/005.php: -------------------------------------------------------------------------------- 1 | request->getFile('my-form.details.avatar'); 4 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/007.php: -------------------------------------------------------------------------------- 1 | request->getFile('images.0'); 4 | $file2 = $this->request->getFile('images.1'); 5 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/008.php: -------------------------------------------------------------------------------- 1 | request->getFileMultiple('images'); 4 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/009.php: -------------------------------------------------------------------------------- 1 | request->getFile('my-form.details.avatars.0'); 4 | $file2 = $this->request->getFile('my-form.details.avatars.1'); 5 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/010.php: -------------------------------------------------------------------------------- 1 | isValid()) { 4 | throw new \RuntimeException($file->getErrorString() . '(' . $file->getError() . ')'); 5 | } 6 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/011.php: -------------------------------------------------------------------------------- 1 | getName(); 4 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/012.php: -------------------------------------------------------------------------------- 1 | getClientName(); 4 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/013.php: -------------------------------------------------------------------------------- 1 | getTempName(); 4 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/014.php: -------------------------------------------------------------------------------- 1 | getClientExtension(); 4 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/015.php: -------------------------------------------------------------------------------- 1 | getClientMimeType(); 4 | 5 | echo $type; // image/png 6 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/016.php: -------------------------------------------------------------------------------- 1 | move(WRITEPATH . 'uploads'); 4 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/017.php: -------------------------------------------------------------------------------- 1 | getRandomName(); 4 | $file->move(WRITEPATH . 'uploads', $newName); 5 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/018.php: -------------------------------------------------------------------------------- 1 | isValid() && ! $file->hasMoved()) { 4 | $file->move($path); 5 | } 6 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/019.php: -------------------------------------------------------------------------------- 1 | request->getFile('userfile')->store(); 4 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/020.php: -------------------------------------------------------------------------------- 1 | request->getFile('userfile')->store('head_img/', 'user_name.jpg'); 4 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/022.php: -------------------------------------------------------------------------------- 1 | move(WRITEPATH . 'uploads', null, true); 4 | -------------------------------------------------------------------------------- /source/libraries/uploaded_files/023.php: -------------------------------------------------------------------------------- 1 | getClientPath(); 4 | echo $clientPath; // dir/file.txt, or dir/sub_dir/file.txt 5 | -------------------------------------------------------------------------------- /source/libraries/uri/001.php: -------------------------------------------------------------------------------- 1 | request->getUri(); 4 | -------------------------------------------------------------------------------- /source/libraries/uri/006.php: -------------------------------------------------------------------------------- 1 | getScheme(); // 'http' 6 | $uri->setScheme('https'); 7 | -------------------------------------------------------------------------------- /source/libraries/uri/009.php: -------------------------------------------------------------------------------- 1 | getAuthority(); // user@example.com:21 6 | -------------------------------------------------------------------------------- /source/libraries/uri/011.php: -------------------------------------------------------------------------------- 1 | getAuthority(true); // user@example.com 4 | -------------------------------------------------------------------------------- /source/libraries/uri/012.php: -------------------------------------------------------------------------------- 1 | getUserInfo(); // user 4 | -------------------------------------------------------------------------------- /source/libraries/uri/013.php: -------------------------------------------------------------------------------- 1 | showPassword()->getUserInfo(); // user:password 4 | $uri->showPassword(false); 5 | -------------------------------------------------------------------------------- /source/libraries/uri/018.php: -------------------------------------------------------------------------------- 1 | setQueryArray(['foo' => 'bar', 'bar' => 'baz']); 4 | -------------------------------------------------------------------------------- /source/libraries/uri/019.php: -------------------------------------------------------------------------------- 1 | addQuery('foo', 'bar'); 4 | -------------------------------------------------------------------------------- /source/libraries/uri/025.php: -------------------------------------------------------------------------------- 1 | getTotalSegments(); // 3 4 | -------------------------------------------------------------------------------- /source/libraries/uri/027.php: -------------------------------------------------------------------------------- 1 | setSilent(); 5 | 6 | // Enable throwing exceptions (default) 7 | $uri->setSilent(false); 8 | -------------------------------------------------------------------------------- /source/libraries/user_agent/001.php: -------------------------------------------------------------------------------- 1 | request->getUserAgent(); 4 | -------------------------------------------------------------------------------- /source/libraries/user_agent/005.php: -------------------------------------------------------------------------------- 1 | isReferral()) { 4 | echo $agent->getReferrer(); 5 | } 6 | -------------------------------------------------------------------------------- /source/libraries/validation/004.php: -------------------------------------------------------------------------------- 1 | setRules([ 5 | 'contacts.friends.*.name' => 'required|max_length[60]', 6 | ]); 7 | -------------------------------------------------------------------------------- /source/libraries/validation/012.php: -------------------------------------------------------------------------------- 1 | check($value, 'required')) { 4 | // $value is valid. 5 | } 6 | -------------------------------------------------------------------------------- /source/libraries/validation/014.php: -------------------------------------------------------------------------------- 1 | run($data, 'signup'); 4 | -------------------------------------------------------------------------------- /source/libraries/validation/017.php: -------------------------------------------------------------------------------- 1 | getRuleGroup('signup'); 4 | -------------------------------------------------------------------------------- /source/libraries/validation/018.php: -------------------------------------------------------------------------------- 1 | setRuleGroup('signup'); 4 | -------------------------------------------------------------------------------- /source/libraries/validation/021.php: -------------------------------------------------------------------------------- 1 | 4, 5 | 'email' => 'foo@example.com', 6 | ]; 7 | -------------------------------------------------------------------------------- /source/libraries/validation/027.php: -------------------------------------------------------------------------------- 1 | getError('username'); 4 | -------------------------------------------------------------------------------- /source/libraries/validation/028.php: -------------------------------------------------------------------------------- 1 | hasError('username')) { 4 | echo $validation->getError('username'); 5 | } 6 | -------------------------------------------------------------------------------- /source/libraries/validation/031.php: -------------------------------------------------------------------------------- 1 | 'The username field must be unique.', 5 | 'email' => 'You must provide a valid email address.', 6 | ]; 7 | -------------------------------------------------------------------------------- /source/libraries/validation/034.php: -------------------------------------------------------------------------------- 1 | setRules([ 4 | 'foo' => 'required|max_length[19]|even', 5 | ]); 6 | -------------------------------------------------------------------------------- /source/libraries/validation/039.php: -------------------------------------------------------------------------------- 1 | get('form', 'Form::index'); 6 | $routes->post('form', 'Form::index'); 7 | 8 | // ... 9 | -------------------------------------------------------------------------------- /source/libraries/validation/042.php: -------------------------------------------------------------------------------- 1 | validateData($data, $rules)) { 5 | return redirect()->back()->withInput(); 6 | } 7 | -------------------------------------------------------------------------------- /source/models/entities/001.php: -------------------------------------------------------------------------------- 1 | request->getPost(); 4 | 5 | $user = new \App\Entities\User(); 6 | $user->fill($data); 7 | $userModel->save($user); 8 | -------------------------------------------------------------------------------- /source/models/entities/005.php: -------------------------------------------------------------------------------- 1 | request->getPost(); 4 | 5 | $user = new \App\Entities\User($data); 6 | $userModel->save($user); 7 | -------------------------------------------------------------------------------- /source/models/entities/007.php: -------------------------------------------------------------------------------- 1 | password = 'my great password'; 5 | $user->setPassword('my great password'); 6 | -------------------------------------------------------------------------------- /source/models/entities/016.php: -------------------------------------------------------------------------------- 1 | colors = ['red', 'yellow', 'green']; 4 | -------------------------------------------------------------------------------- /source/models/entities/022.php: -------------------------------------------------------------------------------- 1 | hasChanged('name'); // false 5 | 6 | $user->name = 'Fred'; 7 | $user->hasChanged('name'); // true 8 | -------------------------------------------------------------------------------- /source/models/entities/023.php: -------------------------------------------------------------------------------- 1 | hasChanged(); // true 4 | -------------------------------------------------------------------------------- /source/models/model/002.php: -------------------------------------------------------------------------------- 1 | find($userId); 4 | -------------------------------------------------------------------------------- /source/models/model/007.php: -------------------------------------------------------------------------------- 1 | find([1, 2, 3]); 4 | -------------------------------------------------------------------------------- /source/models/model/008.php: -------------------------------------------------------------------------------- 1 | findColumn($columnName); 4 | -------------------------------------------------------------------------------- /source/models/model/009.php: -------------------------------------------------------------------------------- 1 | findAll(); 4 | -------------------------------------------------------------------------------- /source/models/model/010.php: -------------------------------------------------------------------------------- 1 | where('active', 1)->findAll(); 4 | -------------------------------------------------------------------------------- /source/models/model/011.php: -------------------------------------------------------------------------------- 1 | findAll($limit, $offset); 4 | -------------------------------------------------------------------------------- /source/models/model/012.php: -------------------------------------------------------------------------------- 1 | where('deleted', 0)->first(); 4 | -------------------------------------------------------------------------------- /source/models/model/014.php: -------------------------------------------------------------------------------- 1 | onlyDeleted()->findAll(); 4 | -------------------------------------------------------------------------------- /source/models/model/016.php: -------------------------------------------------------------------------------- 1 | 'darth', 5 | 'email' => 'd.vader@theempire.com', 6 | ]; 7 | 8 | $userModel->update($id, $data); 9 | -------------------------------------------------------------------------------- /source/models/model/017.php: -------------------------------------------------------------------------------- 1 | 1, 5 | ]; 6 | 7 | $userModel->update([1, 2, 3], $data); 8 | -------------------------------------------------------------------------------- /source/models/model/018.php: -------------------------------------------------------------------------------- 1 | whereIn('id', [1, 2, 3]) 5 | ->set(['active' => 1]) 6 | ->update(); 7 | -------------------------------------------------------------------------------- /source/models/model/023.php: -------------------------------------------------------------------------------- 1 | delete(12); 4 | -------------------------------------------------------------------------------- /source/models/model/024.php: -------------------------------------------------------------------------------- 1 | delete([1, 2, 3]); 4 | -------------------------------------------------------------------------------- /source/models/model/025.php: -------------------------------------------------------------------------------- 1 | where('id', 12)->delete(); 4 | -------------------------------------------------------------------------------- /source/models/model/026.php: -------------------------------------------------------------------------------- 1 | purgeDeleted(); 4 | -------------------------------------------------------------------------------- /source/models/model/032.php: -------------------------------------------------------------------------------- 1 | save($data) === false) { 4 | return view('updateUser', ['errors' => $model->errors()]); 5 | } 6 | -------------------------------------------------------------------------------- /source/models/model/035.php: -------------------------------------------------------------------------------- 1 | validationRules; 4 | -------------------------------------------------------------------------------- /source/models/model/036.php: -------------------------------------------------------------------------------- 1 | getValidationRules($options); 4 | -------------------------------------------------------------------------------- /source/models/model/039.php: -------------------------------------------------------------------------------- 1 | 4, 5 | 'email' => 'foo@example.com', 6 | ]; 7 | -------------------------------------------------------------------------------- /source/models/model/042.php: -------------------------------------------------------------------------------- 1 | protect(false) 4 | ->insert($data) 5 | ->protect(true); 6 | -------------------------------------------------------------------------------- /source/models/model/043.php: -------------------------------------------------------------------------------- 1 | builder(); 4 | -------------------------------------------------------------------------------- /source/models/model/044.php: -------------------------------------------------------------------------------- 1 | builder('groups'); 4 | -------------------------------------------------------------------------------- /source/models/model/045.php: -------------------------------------------------------------------------------- 1 | where('status', 'active') 4 | ->orderBy('last_login', 'asc') 5 | ->findAll(); 6 | -------------------------------------------------------------------------------- /source/models/model/046.php: -------------------------------------------------------------------------------- 1 | escape($name); 4 | -------------------------------------------------------------------------------- /source/models/model/047.php: -------------------------------------------------------------------------------- 1 | asArray()->where('status', 'active')->findAll(); 4 | -------------------------------------------------------------------------------- /source/models/model/049.php: -------------------------------------------------------------------------------- 1 | chunk(100, static function ($data) { 4 | // do something. 5 | // $data is a single row of data. 6 | }); 7 | -------------------------------------------------------------------------------- /source/models/model/053.php: -------------------------------------------------------------------------------- 1 | allowCallbacks(false)->find(1); // No callbacks triggered 4 | $model->find(1); // Callbacks subject to original property value 5 | -------------------------------------------------------------------------------- /source/models/model/056.php: -------------------------------------------------------------------------------- 1 | allowEmptyInserts()->insert([]); 4 | -------------------------------------------------------------------------------- /source/outgoing/alternative_php/001.php: -------------------------------------------------------------------------------- 1 | 10 | -------------------------------------------------------------------------------- /source/outgoing/api_responses/005.php: -------------------------------------------------------------------------------- 1 | setResponseFormat('json')->respond(['error' => false]); 4 | -------------------------------------------------------------------------------- /source/outgoing/api_responses/007.php: -------------------------------------------------------------------------------- 1 | insert($data); 4 | 5 | return $this->respondCreated($user); 6 | -------------------------------------------------------------------------------- /source/outgoing/api_responses/008.php: -------------------------------------------------------------------------------- 1 | delete($id); 4 | 5 | return $this->respondDeleted(['id' => $id]); 6 | -------------------------------------------------------------------------------- /source/outgoing/api_responses/009.php: -------------------------------------------------------------------------------- 1 | respondNoContent(); 6 | -------------------------------------------------------------------------------- /source/outgoing/api_responses/010.php: -------------------------------------------------------------------------------- 1 | failUnauthorized('Invalid Auth token'); 4 | -------------------------------------------------------------------------------- /source/outgoing/api_responses/011.php: -------------------------------------------------------------------------------- 1 | failForbidden('Invalid API endpoint.'); 4 | -------------------------------------------------------------------------------- /source/outgoing/api_responses/012.php: -------------------------------------------------------------------------------- 1 | failNotFound('User 13 cannot be found.'); 4 | -------------------------------------------------------------------------------- /source/outgoing/api_responses/013.php: -------------------------------------------------------------------------------- 1 | failValidationErrors($validation->getErrors()); 4 | -------------------------------------------------------------------------------- /source/outgoing/api_responses/014.php: -------------------------------------------------------------------------------- 1 | failResourceExists('A user already exists with that email.'); 4 | -------------------------------------------------------------------------------- /source/outgoing/api_responses/015.php: -------------------------------------------------------------------------------- 1 | failResourceGone('That user has been previously deleted.'); 4 | -------------------------------------------------------------------------------- /source/outgoing/api_responses/016.php: -------------------------------------------------------------------------------- 1 | failTooManyRequests('You must wait 15 seconds before making another request.'); 4 | -------------------------------------------------------------------------------- /source/outgoing/api_responses/017.php: -------------------------------------------------------------------------------- 1 | failServerError('Server error.'); 4 | -------------------------------------------------------------------------------- /source/outgoing/csp/014.php: -------------------------------------------------------------------------------- 1 | response->getCSP(); 5 | 6 | $csp->clearDirective('style-src'); 7 | -------------------------------------------------------------------------------- /source/outgoing/localization/004.php: -------------------------------------------------------------------------------- 1 | get('{locale}/books', 'App\Books::index'); 4 | -------------------------------------------------------------------------------- /source/outgoing/localization/006.php: -------------------------------------------------------------------------------- 1 | getLocale(); 4 | -------------------------------------------------------------------------------- /source/outgoing/localization/007.php: -------------------------------------------------------------------------------- 1 | 'The actual message to be shown.', 5 | ]; 6 | -------------------------------------------------------------------------------- /source/outgoing/localization/010.php: -------------------------------------------------------------------------------- 1 | 3]); 5 | -------------------------------------------------------------------------------- /source/outgoing/localization/018.php: -------------------------------------------------------------------------------- 1 | useSupportedLocalesOnly(true); 4 | -------------------------------------------------------------------------------- /source/outgoing/localization/020.php: -------------------------------------------------------------------------------- 1 | setLocale('ja'); 5 | -------------------------------------------------------------------------------- /source/outgoing/localization/021.php: -------------------------------------------------------------------------------- 1 | setLocale('ja'); 6 | -------------------------------------------------------------------------------- /source/outgoing/response/001.php: -------------------------------------------------------------------------------- 1 | response->setStatusCode(404)->setBody($body); 4 | -------------------------------------------------------------------------------- /source/outgoing/response/002.php: -------------------------------------------------------------------------------- 1 | response->setStatusCode(404, 'Nope. Not here.'); 4 | -------------------------------------------------------------------------------- /source/outgoing/response/004.php: -------------------------------------------------------------------------------- 1 | response->setHeader('Location', 'http://example.com') 4 | ->setHeader('WWW-Authenticate', 'Negotiate'); 5 | -------------------------------------------------------------------------------- /source/outgoing/response/005.php: -------------------------------------------------------------------------------- 1 | response->setHeader('Cache-Control', 'no-cache') 4 | ->appendHeader('Cache-Control', 'must-revalidate'); 5 | -------------------------------------------------------------------------------- /source/outgoing/response/006.php: -------------------------------------------------------------------------------- 1 | response->removeHeader('Location'); 4 | -------------------------------------------------------------------------------- /source/outgoing/response/007.php: -------------------------------------------------------------------------------- 1 | response->download($name, $data); 7 | -------------------------------------------------------------------------------- /source/outgoing/response/008.php: -------------------------------------------------------------------------------- 1 | response->download('/path/to/photo.jpg', null); 5 | -------------------------------------------------------------------------------- /source/outgoing/response/009.php: -------------------------------------------------------------------------------- 1 | response->download('awkwardEncryptedFileName.fakeExt', null)->setFileName('expenses.csv'); 4 | -------------------------------------------------------------------------------- /source/outgoing/response/010.php: -------------------------------------------------------------------------------- 1 | 300, 5 | 's-maxage' => 900, 6 | 'etag' => 'abcde', 7 | ]; 8 | $this->response->setCache($options); 9 | -------------------------------------------------------------------------------- /source/outgoing/response/014.php: -------------------------------------------------------------------------------- 1 | getStatusCode(); 4 | -------------------------------------------------------------------------------- /source/outgoing/response/015.php: -------------------------------------------------------------------------------- 1 | setStatusCode(404); 4 | -------------------------------------------------------------------------------- /source/outgoing/response/016.php: -------------------------------------------------------------------------------- 1 | setStatusCode(230, 'Tardis initiated'); 4 | -------------------------------------------------------------------------------- /source/outgoing/response/017.php: -------------------------------------------------------------------------------- 1 | getReasonPhrase(); 4 | -------------------------------------------------------------------------------- /source/outgoing/response/019.php: -------------------------------------------------------------------------------- 1 | setContentType('text/plain'); 4 | $response->setContentType('text/html'); 5 | $response->setContentType('application/json'); 6 | -------------------------------------------------------------------------------- /source/outgoing/response/020.php: -------------------------------------------------------------------------------- 1 | setContentType('text/plain', 'x-pig-latin'); 4 | -------------------------------------------------------------------------------- /source/outgoing/response/021.php: -------------------------------------------------------------------------------- 1 | noCache(); 4 | /* 5 | * Sets the following header: 6 | * Cache-Control: no-store, max-age=0, no-cache 7 | */ 8 | -------------------------------------------------------------------------------- /source/outgoing/response/022.php: -------------------------------------------------------------------------------- 1 | setLastModified(date('D, d M Y H:i:s')); 4 | $response->setLastModified(\DateTime::createFromFormat('!U', $timestamp)); 5 | -------------------------------------------------------------------------------- /source/outgoing/response/024.php: -------------------------------------------------------------------------------- 1 | setCookie($name, $value, $expire, $domain, $path, $prefix, $secure, $httponly, $samesite); 4 | -------------------------------------------------------------------------------- /source/outgoing/response/025.php: -------------------------------------------------------------------------------- 1 | deleteCookie($name); 4 | -------------------------------------------------------------------------------- /source/outgoing/response/026.php: -------------------------------------------------------------------------------- 1 | hasCookie($name)) { 4 | // ... 5 | } 6 | -------------------------------------------------------------------------------- /source/outgoing/response/027.php: -------------------------------------------------------------------------------- 1 | getCookie($name); 4 | -------------------------------------------------------------------------------- /source/outgoing/response/028.php: -------------------------------------------------------------------------------- 1 | to('admin/home'); 5 | -------------------------------------------------------------------------------- /source/outgoing/response/029.php: -------------------------------------------------------------------------------- 1 | route('user_gallery'); 5 | -------------------------------------------------------------------------------- /source/outgoing/response/030.php: -------------------------------------------------------------------------------- 1 | response->download($name, $data)->inline(); 7 | -------------------------------------------------------------------------------- /source/outgoing/response/034.php: -------------------------------------------------------------------------------- 1 | back()->withCookies(); 5 | -------------------------------------------------------------------------------- /source/outgoing/response/035.php: -------------------------------------------------------------------------------- 1 | back()->withHeaders(); 5 | -------------------------------------------------------------------------------- /source/outgoing/table/001.php: -------------------------------------------------------------------------------- 1 | query('SELECT * FROM my_table'); 6 | 7 | echo $table->generate($query); 8 | -------------------------------------------------------------------------------- /source/outgoing/table/010.php: -------------------------------------------------------------------------------- 1 | setCaption('Colors'); 4 | -------------------------------------------------------------------------------- /source/outgoing/table/011.php: -------------------------------------------------------------------------------- 1 | setHeading('Name', 'Color', 'Size'); // or 4 | 5 | $table->setHeading(['Name', 'Color', 'Size']); 6 | -------------------------------------------------------------------------------- /source/outgoing/table/012.php: -------------------------------------------------------------------------------- 1 | setFooting('Subtotal', $subtotal, $notes); // or 4 | 5 | $table->setFooting(['Subtotal', $subtotal, $notes]); 6 | -------------------------------------------------------------------------------- /source/outgoing/table/013.php: -------------------------------------------------------------------------------- 1 | addRow('Blue', 'Red', 'Green'); // or 4 | 5 | $table->addRow(['Blue', 'Red', 'Green']); 6 | -------------------------------------------------------------------------------- /source/outgoing/table/017.php: -------------------------------------------------------------------------------- 1 | setEmpty(' '); 4 | -------------------------------------------------------------------------------- /source/outgoing/view_cells/002.php: -------------------------------------------------------------------------------- 1 | // In a View. 2 | 'value1', 'param2' => 'value2']) ?> 3 | -------------------------------------------------------------------------------- /source/outgoing/view_cells/003.php: -------------------------------------------------------------------------------- 1 | // In a View. 2 | 3 | -------------------------------------------------------------------------------- /source/outgoing/view_cells/005.php: -------------------------------------------------------------------------------- 1 | // In a View. 2 | 'success', 'message' => 'The user has been updated.']) ?> 3 | -------------------------------------------------------------------------------- /source/outgoing/view_cells/006.php: -------------------------------------------------------------------------------- 1 | // In a View. 2 | 3 | -------------------------------------------------------------------------------- /source/outgoing/view_cells/009.php: -------------------------------------------------------------------------------- 1 | // app/Cells/alert_message.php 2 |
3 | 4 |
5 | -------------------------------------------------------------------------------- /source/outgoing/view_cells/010.php: -------------------------------------------------------------------------------- 1 | // Called in main View: 2 | 3 | -------------------------------------------------------------------------------- /source/outgoing/view_cells/013.php: -------------------------------------------------------------------------------- 1 | // In a View. Initialize the protected properties. 2 | 'note', 'message' => 'test']) ?> 3 | -------------------------------------------------------------------------------- /source/outgoing/view_cells/020.php: -------------------------------------------------------------------------------- 1 | // Called in main View: 2 | 5]) ?> 3 | -------------------------------------------------------------------------------- /source/outgoing/view_cells/021.php: -------------------------------------------------------------------------------- 1 | // Cache the view for 5 minutes 2 | 3 | -------------------------------------------------------------------------------- /source/outgoing/view_cells/022.php: -------------------------------------------------------------------------------- 1 | // Cache the view for 5 minutes 2 | 3 | -------------------------------------------------------------------------------- /source/outgoing/view_parser/001.php: -------------------------------------------------------------------------------- 1 | render('blog_template', [ 4 | 'cache' => HOUR, 5 | 'cache_name' => 'something_unique', 6 | ]); 7 | -------------------------------------------------------------------------------- /source/outgoing/view_parser/011.php: -------------------------------------------------------------------------------- 1 | 2 |

Welcome, Admin!

3 | 4 | -------------------------------------------------------------------------------- /source/outgoing/view_parser/022.php: -------------------------------------------------------------------------------- 1 | render('myview'); 4 | -------------------------------------------------------------------------------- /source/outgoing/view_parser/023.php: -------------------------------------------------------------------------------- 1 | renderString(''); 4 | -------------------------------------------------------------------------------- /source/outgoing/view_parser/024.php: -------------------------------------------------------------------------------- 1 | setData(['name' => 'George', 'position' => 'Boss']); 4 | -------------------------------------------------------------------------------- /source/outgoing/view_parser/025.php: -------------------------------------------------------------------------------- 1 | setVar('name', 'Joe', 'html'); 4 | -------------------------------------------------------------------------------- /source/outgoing/view_parser/026.php: -------------------------------------------------------------------------------- 1 | setDelimiters('[', ']'); 4 | -------------------------------------------------------------------------------- /source/outgoing/view_parser/027.php: -------------------------------------------------------------------------------- 1 | setConditionalDelimiters('{%', '%}'); 4 | -------------------------------------------------------------------------------- /source/outgoing/view_renderer/001.php: -------------------------------------------------------------------------------- 1 | setVar('one', $one) 4 | ->setVar('two', $two) 5 | ->render('myView'); 6 | -------------------------------------------------------------------------------- /source/outgoing/view_renderer/004.php: -------------------------------------------------------------------------------- 1 | setVar('one', $one, 'raw'); 4 | -------------------------------------------------------------------------------- /source/outgoing/view_renderer/005.php: -------------------------------------------------------------------------------- 1 | render('myview'); 4 | -------------------------------------------------------------------------------- /source/outgoing/view_renderer/006.php: -------------------------------------------------------------------------------- 1 | renderString('
My Sharona
'); 4 | -------------------------------------------------------------------------------- /source/outgoing/view_renderer/007.php: -------------------------------------------------------------------------------- 1 | setData(['name' => 'George', 'position' => 'Boss']); 4 | -------------------------------------------------------------------------------- /source/outgoing/view_renderer/008.php: -------------------------------------------------------------------------------- 1 | setVar('name', 'Joe', 'html'); 4 | -------------------------------------------------------------------------------- /source/outgoing/views/001.php: -------------------------------------------------------------------------------- 1 | 60]); 5 | -------------------------------------------------------------------------------- /source/outgoing/views/007.php: -------------------------------------------------------------------------------- 1 | 60, 'cache_name' => 'my_cached_view']); 5 | -------------------------------------------------------------------------------- /source/outgoing/views/013.php: -------------------------------------------------------------------------------- 1 | get('blog', [Blog::class, 'index']); 6 | -------------------------------------------------------------------------------- /source/testing/benchmark/001.php: -------------------------------------------------------------------------------- 1 | start('render view'); 5 | -------------------------------------------------------------------------------- /source/testing/benchmark/002.php: -------------------------------------------------------------------------------- 1 | stop('render view'); 4 | -------------------------------------------------------------------------------- /source/testing/benchmark/003.php: -------------------------------------------------------------------------------- 1 | getTimers(6); 4 | -------------------------------------------------------------------------------- /source/testing/benchmark/006.php: -------------------------------------------------------------------------------- 1 | getElapsedTime('render view'); 4 | // Displays: 0.0234 5 | -------------------------------------------------------------------------------- /source/testing/benchmark/008.php: -------------------------------------------------------------------------------- 1 | run(3000); 5 | -------------------------------------------------------------------------------- /source/testing/benchmark/009.php: -------------------------------------------------------------------------------- 1 | run(1000, false); 5 | -------------------------------------------------------------------------------- /source/testing/controllers/003.php: -------------------------------------------------------------------------------- 1 | controller(\App\Controllers\ForumController::class); 4 | -------------------------------------------------------------------------------- /source/testing/controllers/004.php: -------------------------------------------------------------------------------- 1 | controller(\App\Controllers\ForumController::class) 4 | ->execute('showCategories'); 5 | -------------------------------------------------------------------------------- /source/testing/controllers/013.php: -------------------------------------------------------------------------------- 1 | getFiltersForRoute('/', 'after'); // ['toolbar'] 4 | -------------------------------------------------------------------------------- /source/testing/controllers/015.php: -------------------------------------------------------------------------------- 1 | assertFilter('users/account', 'before', 'login'); 5 | -------------------------------------------------------------------------------- /source/testing/controllers/016.php: -------------------------------------------------------------------------------- 1 | assertNotFilter('api/v1/widgets', 'after', 'toolbar'); 5 | -------------------------------------------------------------------------------- /source/testing/controllers/017.php: -------------------------------------------------------------------------------- 1 | assertHasFilters('filtered/route', 'after'); 5 | -------------------------------------------------------------------------------- /source/testing/controllers/018.php: -------------------------------------------------------------------------------- 1 | assertNotHasFilters('about/contact', 'before'); 5 | -------------------------------------------------------------------------------- /source/testing/database/004.php: -------------------------------------------------------------------------------- 1 | 'joe@example.com', 5 | 'active' => 1, 6 | ]; 7 | $this->dontSeeInDatabase('users', $criteria); 8 | -------------------------------------------------------------------------------- /source/testing/database/005.php: -------------------------------------------------------------------------------- 1 | 'joe@example.com', 5 | 'active' => 1, 6 | ]; 7 | $this->seeInDatabase('users', $criteria); 8 | -------------------------------------------------------------------------------- /source/testing/database/006.php: -------------------------------------------------------------------------------- 1 | grabFromDatabase('users', 'username', ['email' => 'joe@example.com']); 4 | -------------------------------------------------------------------------------- /source/testing/database/007.php: -------------------------------------------------------------------------------- 1 | 'joe@example.com', 5 | 'name' => 'Joe Cool', 6 | ]; 7 | $this->hasInDatabase('users', $data); 8 | -------------------------------------------------------------------------------- /source/testing/database/008.php: -------------------------------------------------------------------------------- 1 | 1, 5 | ]; 6 | $this->seeNumRecords(2, 'users', $criteria); 7 | -------------------------------------------------------------------------------- /source/testing/debugging/001.php: -------------------------------------------------------------------------------- 1 | make(10); 4 | -------------------------------------------------------------------------------- /source/testing/fabricator/013.php: -------------------------------------------------------------------------------- 1 | create(100); 4 | -------------------------------------------------------------------------------- /source/testing/fabricator/014.php: -------------------------------------------------------------------------------- 1 | assertIsNumeric($user->id); 6 | $this->dontSeeInDatabase('user', ['id' => $user->id]); 7 | -------------------------------------------------------------------------------- /source/testing/fabricator/015.php: -------------------------------------------------------------------------------- 1 | setOverrides(['first' => 'Bobby']); 4 | $bobbyUser = $fabricator->make(); 5 | -------------------------------------------------------------------------------- /source/testing/fabricator/017.php: -------------------------------------------------------------------------------- 1 | setOverrides(['first' => 'Bobby'], $persist = false); 4 | $bobbyUser = $fabricator->make(); 5 | $bobbyUser = $fabricator->make(); 6 | -------------------------------------------------------------------------------- /source/testing/fabricator/019.php: -------------------------------------------------------------------------------- 1 | 'Gerry']); 5 | -------------------------------------------------------------------------------- /source/testing/feature/004.php: -------------------------------------------------------------------------------- 1 | withRoutes($routes)->get('users'); 8 | -------------------------------------------------------------------------------- /source/testing/feature/006.php: -------------------------------------------------------------------------------- 1 | 'application/json', 5 | ]; 6 | 7 | $result = $this->withHeaders($headers)->post('users'); 8 | -------------------------------------------------------------------------------- /source/testing/feature/007.php: -------------------------------------------------------------------------------- 1 | skipEvents()->post('users', $userInfo); 4 | -------------------------------------------------------------------------------- /source/testing/mocking/001.php: -------------------------------------------------------------------------------- 1 | bypass(); 6 | -------------------------------------------------------------------------------- /source/testing/response/001.php: -------------------------------------------------------------------------------- 1 | assertOK(); 5 | -------------------------------------------------------------------------------- /source/testing/response/002.php: -------------------------------------------------------------------------------- 1 | request(); 4 | -------------------------------------------------------------------------------- /source/testing/response/003.php: -------------------------------------------------------------------------------- 1 | response(); 4 | -------------------------------------------------------------------------------- /source/testing/response/004.php: -------------------------------------------------------------------------------- 1 | isOK()) { 4 | // ... 5 | } 6 | -------------------------------------------------------------------------------- /source/testing/response/005.php: -------------------------------------------------------------------------------- 1 | assertOK(); 4 | -------------------------------------------------------------------------------- /source/testing/response/006.php: -------------------------------------------------------------------------------- 1 | isRedirect()) { 4 | // ... 5 | } 6 | -------------------------------------------------------------------------------- /source/testing/response/007.php: -------------------------------------------------------------------------------- 1 | assertRedirect(); 4 | -------------------------------------------------------------------------------- /source/testing/response/008.php: -------------------------------------------------------------------------------- 1 | assertRedirectTo('foo/bar'); 4 | -------------------------------------------------------------------------------- /source/testing/response/009.php: -------------------------------------------------------------------------------- 1 | getRedirectUrl(); 4 | $this->assertEquals(site_url('foo/bar'), $url); 5 | -------------------------------------------------------------------------------- /source/testing/response/010.php: -------------------------------------------------------------------------------- 1 | assertStatus(403); 4 | -------------------------------------------------------------------------------- /source/testing/response/011.php: -------------------------------------------------------------------------------- 1 | assertSessionHas('logged_in', 123); 4 | -------------------------------------------------------------------------------- /source/testing/response/012.php: -------------------------------------------------------------------------------- 1 | assertSessionMissing('logged_in'); 4 | -------------------------------------------------------------------------------- /source/testing/response/013.php: -------------------------------------------------------------------------------- 1 | assertHeader('Content-Type', 'text/html'); 4 | -------------------------------------------------------------------------------- /source/testing/response/014.php: -------------------------------------------------------------------------------- 1 | assertHeader('Accepts'); 4 | -------------------------------------------------------------------------------- /source/testing/response/015.php: -------------------------------------------------------------------------------- 1 | assertCookie('foo', 'bar'); 4 | -------------------------------------------------------------------------------- /source/testing/response/016.php: -------------------------------------------------------------------------------- 1 | assertCookieMissing('ci_session'); 4 | -------------------------------------------------------------------------------- /source/testing/response/017.php: -------------------------------------------------------------------------------- 1 | assertCookieExpired('foo'); 4 | -------------------------------------------------------------------------------- /source/testing/response/027.php: -------------------------------------------------------------------------------- 1 | assertDontSeeElement('#title'); 5 | -------------------------------------------------------------------------------- /source/testing/response/031.php: -------------------------------------------------------------------------------- 1 | assertTrue($result->getJSON() !== false); 5 | -------------------------------------------------------------------------------- /source/tutorial/news_section/007.php: -------------------------------------------------------------------------------- 1 |

2 |

3 | -------------------------------------------------------------------------------- /source/tutorial/static_pages/003.php: -------------------------------------------------------------------------------- 1 | get('/', 'Home::index'); 9 | -------------------------------------------------------------------------------- /source/tutorial/static_pages/004.php: -------------------------------------------------------------------------------- 1 | get('pages', [Pages::class, 'index']); 6 | $routes->get('(:segment)', [Pages::class, 'view']); 7 | --------------------------------------------------------------------------------