GithubHelp home page GithubHelp logo

boleiros / ephp Goto Github PK

View Code? Open in Web Editor NEW

This project forked from phpzm/ephp

0.0 8.0 0.0 38 KB

Conjunto de funções e classes para simplificar a vida do desenvolvedor

License: MIT License

PHP 100.00%

ephp's Introduction

Essentials PHP (ePHP)

O Essentials PHP é um conjunto simples de funções, classes e configurações básicas para simplificar a vida do desenvolvedor.

Você pode aplicar o Essentials PHP à qualquer projeto PHP que você tenha. Veremos mais pra frente as vantagens que você pode obter com isso.

Motivação

Existe hoje uma lacuna muito grande entre usar o PHP diretamente ou adotar algum framework. Não há entre estes dois pontos um meio termo acessível e o que eu tenho visto por ai é o uso do PHP sem o mínimo de segurança e/ou organização quando não se usa um FW (framework) - embora a simples adoção do FW também não garanta totalmente qualidade nem segurança para o projeto. o ePHP entre nesse meio ai e entrega uma forma simples e de qualidade para usar o PHP sem muitas firulas e com a opção de mexer no seu fluxo de trabalho só à medida que você precisar.

A ideia é eliminar do desenvolvimento com PHP acessos diretos a arquivos e o famoso include db.inc.php. O PHP já deixou isso para trás, mas falta ferramentas para auxiliar os dev's a seguirem adiante também.

Por onde começar

Faça download do arquivo que contém a estrutura do projeto.

Em seguida crie uma pasta para o projeto e descompacte o arquivo que você baixou dentro dela.

Agora é a vez de baixar o Composer. Vá até o site do composer role até o final da página e escolha uma versão compatível com a sua versão do PHP. Faça o download do arquivo para a pasta que você criou. Neste momento a versão estável mais atual é a 1.5.6 e ela é compatível com o PHP 7.1 que estou usando : )

O próximo passo é abrir uma janela de terminal nesse diretório e dar o comando php composer.phar install

Pronto! Agora você já está pronto para rodar o projeto.

Rodando o "Hello World!"

Você pode optar por:

  • Usar o servidor embutido no PHP: use o comando php -S localhost:8080 -t public_html/ para iniciar o projeto;

  • Usar o Nginx através do docker-compose: crie uma cópia do docker-compose.yml.sample removendo o .sample do fim do nome do arquivo. Feito isso basta rodar docker-compose up.

  • Usar o que já está acostumado: seguindo por aqui imagino que você saiba onde colocar os arquivos e como acessar eles

Qualquer um dois dois primeiros caminhos vão te levar a acessar o "Hello World!" em http://localhost:8080, e, obviamente, você pode mudar essas configurações. Caso tenha optado por usar o que já está acostumado a URL de acesso será no formato que você está familiarizado.

Pra que isso tudo gente?!

A ideia do ePHP é entregar facilidatores para o desenvolvedor. Separamos alguns tópicos a serem tratados que o projeto visa a resolver de forma rápida e muito simples.

  • Acesso centralizado: Um dos objetivos mais importantes deste projeto é remover da raiz do web server a aplicação. Utilizando alguns recursos disponibilizados é possível colocar toda a aplicação "legada" a ser protegida dentro da pasta app e configurar como os arquivos serão acessados. Com esta modificação de segurança seu projeto já começa a ter um nível diferenciado de segurança.

  • Super Globais: O segundo ponto a ser tocado é abstrair o acesso às super globais entregando funções que estão disponíveis em qualquer parte do projeto. Usando esses recursos você consegue limpar as entradas do usuário de acordo com o tipo de dado informado e minimiza muito o impacto de falhas de segurança que explorem combinações de valores de entrada para "zuar" com a sua aplicação. O acesso aos dados usa os mecanismos do filter_input garantido a higienização dos valores recebidos. Além disso também é possível dar suporte a receber dados em formato JSON (payload) através da mesma função que é usada para os dados enviados via POST.

  • Construção de comandos SQL: Você provavelmente está acostumado a criar comandos SQL e concatenar strings com $_GET e $_POST, mas essa prática vai pulverizar pelo seu código possíveis falhas de segurança. Para contornar isso você leva um construtir de comandos SQL na faixa que usa os famosos Prepared Statements para criar as instruções deixando seu código mais limpo e menos desprotegido.

ephp's People

Contributors

wilcorrea avatar

Watchers

James Cloos avatar Maicon Pinto avatar Max Vianna avatar Richelly Italo avatar Erik Figueiredo avatar Flaviano Honorato avatar Elton Nicolau avatar Antonio Carlos Rabelo avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.