Vix Blog
No Result
View All Result
Social icon element need JNews Essential plugin to be activated.
  • Economia
  • Educação
  • Segurança
  • Mundo
  • Negócios
  • Notícias
  • Tecnologia
  • DMCA
NEWSLETTER
  • Economia
  • Educação
  • Segurança
  • Mundo
  • Negócios
  • Notícias
  • Tecnologia
  • DMCA
No Result
View All Result
Vix Blog
No Result
View All Result

Uma vez que erigir um site do zero com PHP

Carolina by Carolina
25 de março de 2022
Reading Time: 11 mins read
0

RELATED POSTS

Uma vez que tirar fotos incríveis de carros: 5 dicas de retrato automotiva

iOS 16 traz a porcentagem da bateria de volta, mas você não deve usá-la

6 dicas do iPad para aumentar sua produtividade

Se você obtiver uma compreensão básica de uma vez que erigir um site usando PHP, terá conhecimento de inclusões de arquivos e produção de saída – o indispensável de personalizar uma página da web. Talvez você esteja se perguntando por onde iniciar ou quais são as próximas etapas a serem seguidas ao fabricar mais funcionalidades em seu site.

Neste tutorial, apresento uma estrutura de site simples que permite atualizações diretas. Ele também demonstra algumas funções úteis do PHP para reunir valor.

O site que você construirá em PHP

O site de exemplo – disponível em um repositório GitHub – é um site simples sobre pássaros em toda a sua clemência. Existem algumas seções, algumas páginas de informações e uma página inicial. O site final não é tão importante quanto as técnicas sobre as quais você lerá e as ideias que elas podem inspirar em você.


pegue 2022-02-14 em 28.11.25

Se puder, baixe o site do GitHub e instale-o em seu computador sítio antes de continuar lendo.

Estrutura universal do site

Cá estão alguns dos principais arquivos e diretórios que você deve investigar.

composer.json
data/
funcs.php
md/
site/
índice.php
tpl/
  • Cada página corresponde a um script PHP no sítio diretório. Isso introduz alguma redundância, mas mantém as coisas simples. Ao configurar seu servidor web, certifique-se de mostrar seu DOCROOT para o sítio diretório.
  • O médico diretório contém arquivos de origem markdown que armazenam o teor principal de algumas páginas individuais.
  • O tpl O diretório contém modelos e arquivos que definem a estrutura universal do HTML que várias páginas podem compartilhar.
  • A maior segmento da funcionalidade do PHP está em funcs.php.

MAKEUSEO VÍDEO DO DIA

Relacionado: Uma vez que configurar seu próprio servidor WAMP

Uma vez que funciona o site

Bootstrap

Bootstrap é um framework front-end para construção de sites. Possui estilos integrados e funcionalidade JavaScript, cobrindo as necessidades mais comuns de desenvolvimento web. É uma óptimo maneira de colocar rapidamente um site em funcionamento antes que você gaste tempo ajustando o design.

Você pode instalar e hospedar os arquivos do Bootstrap em seu servidor, mas para velocidade máxima, você pode somente referenciá-los a partir de um CDN. Dê uma olhada tpl/head.php e você deve ver um exemplo uma vez que:

<link
href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css"
rel="stylesheet"
integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
crossorigin="anonymous"
/>

Modelagem Básica

Encetar com site/índice.php. Nascente é o registro que representa a página inicial do site. Dependendo de uma vez que seu servidor web está configurado, você poderá acessá-lo em http://yoursite.example.org/ ou, na falta disso, http://yoursite.example.org/índice.php.

Observe as duas inclusões logo no início deste registro: funcs.php e TPL_DIR.”/home.php”. O funcs.php registro define que TPL_DIR jacente uma vez que o caminho inteiro completo do tpl diretório no nível superior do site.

Dê uma olhada tpl/home.php. Nascente é o esqueleto mais extrínseco de um documento html: ele inclui somente um doctype e um elemento HTML. Dentro do elemento HTML, ele usa duas inclusões para modelos que representam o cabeçalho e o corpo.

<!DOCTYPE html>
<html lang="en">
<?php include TPL_DIR."/head.php"; ?>
<?php include TPL_DIR."/home/body.php"; ?>
</html>

Em contraste, o padrão para a seção de pássaros carrega um padrão de corpo dissemelhante, tpl/birds/body.tpl. Isso contém um layout dissemelhante para as páginas dessa seção, um com uma barra lateral.

Analisando Markdown

No compositor.json registro, uma livraria de terceiros chamada erusev/parsedown é necessária. Esta é uma livraria de estudo de Markdown. Ele permite que você, com muita facilidade, converta o texto Markdown em HTML.

Muitos sites estáticos geram HTML final a partir de documentos escritos em outra linguagem, uma vez que Markdown. Ele oferece uma sintaxe melhor para autoria, que é mais legível do que HTML. O site de exemplo apresenta isso uma vez que uma opção. Dê uma olhada no mostrar teor() funcionar em funcs.php:

function show_content() {
$file = MD_DIR.PAGE.'.md';
if (file_exists($file)) {
$Parsedown = new Parsedown();
echo $Parsedown->text(file_get_contents($file));
} else if (function_exists("content")) {
echo content();
}
}

Se viver um registro Markdown correspondente à página solicitada, um objeto Parsedown converte seu teor em HTML e o gera. Se não houver um registro Markdown, ele procurará uma função chamada contente() em vez de. Páginas individuais podem definir esta função (veja site/índice.php por exemplo) se o teor deles precisar ir além do que o Markdown estático pode perceber.

Carregando metadados

Dê uma olhada no get_json funcionar em funcs.php:

function get_json($file) {
$data_file = DATA_DIR."/".$file;
if (!file_exists($data_file)) {
return array();
}
if (($json = file_get_contents($data_file)) === false) {
return array();
}
if (($out = json_decode($json, true)) === null) {
return array();
}
return $out;
}

Essencialmente, a função labareda outras duas para buscar e examinar dados de um determinado registro. Ele veste isso com muita verificação de erros para retornar uma matriz vazia se um pouco der inexacto. Ligando json_decode() uma vez que levante retorna um array associativo que torna muito fácil trabalhar com os dados imediatamente. Essa abordagem é tão profíquo que você pode preferir usar um banco de dados, principalmente para tarefas simples, uma vez que formato global.


O site usa dois arquivos de metadados: data/titles.json e data/featured.json. O primeiro armazena o título de cada página, útil para links automáticos e em outros casos.

{
"/": "Home",
"/about": "About",
"/birds": "Bird profiles",
...
}

Esta é uma maneira prática de manter todos os títulos de página em um só lugar (registro) que é fácil de atualizar quando você precisar. Esses títulos contribuem para a navegação no menu superior, lista de navegação e painéis laterais.

function page_title($page = PAGE) {
$titles = get_titles();
return array_key_exists($page, $titles) ? $titles[$page] : basename($page);
}

Uma página de site simples mostrando informações sobre um pássaro com sua foto

Cá está a primeira segmento do Migalhas de pão() função (de funcs.php) que cria uma matriz de títulos de página para cada segmento da URL. Por exemplo, para o /pássaros/chat-azul página, ele procura o título para o / página, logo o título para /pássaroslogo finalmente o título para /pássaros/chat-azul. A lista de navegação consistirá em um link para cada página na jerarquia.

function breadcrumbs() {
$items = array();
$titles = get_titles();
$parts = explode("/", PAGE);
$href = "";
foreach ($parts as $part) {
$href .= ($href == "/" ? "" : "/").$part;
$items[$href] = $titles[$href];
}
...
}

Obtendo outros metadados

Se você visualizar a página Sobre, uma notícia específica ou um perfil de pássaro específico, poderá identificar um Ultima atualização mensagem no rodapé. O rodapé do site é armazenado em tpl/footer.php. Abra levante registro e observe o trecho de PHP dentro dele:

if (file_exists($file = MD_DIR.PAGE.'.md')) {
echo 'Last updated: '.date('r', filemtime(MD_DIR.PAGE.'.md'));
}

Nascente é um exemplo simples de buscar metadados diretamente de um registro em vez de um banco de dados ou outra manadeira. O hora do registro A função retorna a hora da última modificação de um registro. Observe que levante é um método muito profíquo para obter a data do teor, mas não é isento de falhas.

Consulte também: Noções básicas sobre carimbos de data/hora de arquivos do Linux: mtime, ctime e atime

Muitas vezes é necessário reutilizar o teor em um site, para mostrar resumos de notícias em uma página de teor, por exemplo. Com um CMS completo, você pode armazenar esses dados uma vez que campos extras em um banco de dados. Com uma abordagem simples de registro simples, você precisa pensar de forma dissemelhante.

As notícias neste site são armazenadas uma vez que arquivos Markdown, para que o teor bruto esteja disponível. As expressões regulares são uma utensílio útil no kit de um desenvolvedor, oferecendo a capacidade de combinar e extrair teor. O news/índice.php file faz exatamente isso para mostrar seu teor. Ele procura o teor de cada registro no md/notícias diretório uma vez que uma string. Em seguida, ele executa várias expressões regulares para extrair dados.


Um site simples mostrando duas notícias sobre pássaros, com fotografias

O título é uma risca que começa com um # símbolo, de combinação com a sintaxe Markdown. Segue-se um espaço em branco opcional, antes do título real. A frase regular ^#s+(.+) corresponde a esse padrão de texto e preg_match() retorna tudo o que correspondeu entre colchetes: o título.

if (preg_match("/^#​s+(.+)/", $contents, $matches)) {
$title = $matches[1];
}

Seguem-se mais duas expressões regulares para extrair a imagem e a primeira frase do registro de remarcação de notícias. Existem desvantagens nessa abordagem; em pessoal, requer disciplina para prometer que os arquivos Markdown sejam sempre formatados exatamente uma vez que o código espera.

Veja também: O Guia do Iniciante para Expressões Regulares com Python

Selecionando teor aleatório

O /pássaros página não faz muito, logo uma imagem de pássaro aleatória a anima. Isso é fácil de conseguir com um pouco de inspeção do sistema de arquivos e uma função incorporada ao PHP. A magia acontece em site/pássaros/índice.php:

function content() {
$files = scandir(SITE_DIR."/img");
$files = array_filter($files, function($file) { return $file[0] != '.'; });
$file = $files[array_rand($files)];
echo '<h1>Birds</h1>';
echo '<img src="/img/'.$file.'" />';
}


O truque é organizar todas as imagens para essa função específica em um único diretório. O scandir() função logo lê os arquivos deste diretório em uma matriz e array_rand() nos dá uma chave aleatória do array para que a função possa escolher um registro individual.

Construindo Sites e Habilidade em PHP

Espero que você tenha aprendido pelo menos uma coisa novidade com levante item. Mais importante, espero que tenha inspirado você a considerar várias abordagens e demonstrado uma vez que você pode usar o PHP de muitas maneiras diferentes.

Quando estiver familiarizado com o PHP, você começará a pensar em soluções alternativas para cada problema. Esta é uma progressão proveniente e significa que você está começando a pensar em um nível mais cimo, focando menos na linguagem de programação em si e mais no que você pode fazer com ela.


Pessoa digitando em um laptop
Juntar autenticação a qualquer aplicativo PHP usando MySQL

Explore o poder do PHP e do MySQL com levante tutorial que o orienta na geração de autenticação em seu aplicativo Web.

Leia a seguir


Sobre o responsável

Bobby Jack
(68 Artigos Publicados)

Bobby é um entusiasta da tecnologia que trabalhou uma vez que desenvolvedor de software por mais de duas décadas. Ele é enamorado por jogos, trabalha uma vez que editor-chefe na Switch Player Magazine e está imerso em todos os aspectos da publicação online e desenvolvimento web.

Mais de Bobby Jack

Assine a nossa newsletter

Junte-se à nossa newsletter para dicas de tecnologia, análises, e-books gratuitos e ofertas exclusivas!

Clique cá para assinar

Carolina

Carolina

Next Post
Porquê instalar o Garuda Linux no seu PC

Porquê instalar o Garuda Linux no seu PC

Porquê incluir diagramas de sereia em seu projeto GitHub

Porquê incluir diagramas de sereia em seu projeto GitHub

Deixe um comentário Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

No Result
View All Result

Categorias

  • Entretenimento
  • Mundo
  • Notícias
  • Segurança

Posts recentes

  • Uma vez que tirar fotos incríveis de carros: 5 dicas de retrato automotiva
  • Quanto você deve gastar em fones de ouvido?
  • Cá estão o Galaxy Flip4 e o Galaxy Fold4

Categorias

  • Entretenimento
  • Mundo
  • Notícias
  • Segurança

Links Importantes

  • Quem Somos
  • Blog
  • Fale Conosco
  • Política de Privacidade
  • DMCA
Social icon element need JNews Essential plugin to be activated.

© 2021 VixBlog - Notícias e dicas para o seu dia dia.

No Result
View All Result
  • Economia
  • Educação
  • Segurança
  • Mundo
  • Negócios
  • Notícias
  • Tecnologia
  • DMCA

© 2021 VixBlog - Notícias e dicas para o seu dia dia.