2011-08-20 28 views
100

A menudo veo ejemplos en PHP que usan archivos .inc para incluir. ¿Cuál es el significado de .inc? ¿Para que se utiliza? ¿Cuáles son las desventajas y ventajas de usarlo?¿Qué es .inc y por qué usarlo?

Respuesta

221

No tiene sentido, solo es una extensión de archivo. Es una convención de algunas personas nombrar archivos con una extensión .inc si ese archivo está diseñado para ser incluido por otros archivos PHP, pero es solo una convención.

Tiene una posible desventaja, que es que los servidores normalmente no están configurados para analizar archivos .inc como php, por lo que si el archivo se encuentra en su raíz web y su servidor está configurado de manera predeterminada, un usuario podría ver su Código fuente php en el archivo .inc visitando la URL directamente.

Su única ventaja es que es fácil identificar qué archivos se utilizan como incluidos. Aunque simplemente darles una extensión .php y colocarlos en una carpeta incluye tiene el mismo efecto sin la desventaja mencionada anteriormente.

+8

@domanokz Sí, será seguro usarlo en ese momento. Se tratará como php solo cuando se use en una estructura 'require' o' include' y se tratará como texto sin formato el resto del tiempo. Tratarlo como texto en su servidor no va a doler, solo duele cuando su código se sirve como texto para el usuario final). – Paulpro

+0

@Paulpro Me lo estaba preguntando desde hace un tiempo, ¡gracias por dejar esto en claro! –

+1

Gran explicación. Acabo de comenzar en un nuevo trabajo y los vi ensuciados durante toda la aplicación. No tenía idea de que era puramente una convención. ¡Gracias! – Chev

10

Es solo una manera para que el desarrollador pueda identificar fácilmente los archivos que se deben usar como incluidos. Es una convención popular. No tiene ningún significado especial en PHP, y no cambiará el comportamiento de PHP o el script en sí.

+1

1 "No tiene ningún significado especial para PHP" – dpp

2

En mi opinión, estos se utilizaron como una forma de encontrar rápidamente archivos de inclusión durante el desarrollo. Realmente estos se han vuelto obsoletos con las convenciones y los diseños del marco.

+0

Este es el comentario sin sentido. Siempre uso .inc para incluir archivos porque es fácil y no hay negativos, solo positivos. El término "convenciones" no tiene ningún referente del que sea consciente en este contexto. Y los frameworks de PHP, ni idea, nunca los toco yo mismo, escribo código, por lo que la noción de que los 'frameworks' han reemplazado la codificación de PHP es simplemente incorrecta. No hay nada de malo con el uso de las cosas si te gusta, pero creer que se reemplazó la programación estándar, en los editores de código, es simplemente incorrecto. – Lizardx

16

Generalmente significa que es un archivo que debe incluirse y no crea una secuencia de comandos independiente.

Esta es una convención, no una técnica de programación.

Aunque si su servidor web no está configurado correctamente, podría exponer archivos con extensiones como .inc.

+4

+1 "no crea una secuencia de comandos independiente en sí misma" – dpp

3

Esta es una convención que el programador generalmente usa para identificar diferentes nombres de archivos para incluir archivos. De modo que si los otros desarrolladores están trabajando en su código, él puede identificar fácilmente por qué este archivo está allí y cuál es el propósito de este archivo simplemente al ver el nombre del archivo.

+0

+1 "para otros desarrolladores" – dpp

+0

@domanokz. gracias ... –

3

Solo para agregar. Otra desventaja sería que. IDE no reconoce los archivos .inc, por lo tanto, no podría aprovechar las características de autocompletar o de predicción de código.

59

Si le preocupa que se sirva el contenido del archivo en lugar de su resultado. Puede usar una extensión doble como: file.inc.php. A continuación, cumple el mismo propósito de ayuda y mantenimiento.

normalmente tienen 2 archivos php para cada página en mi sitio:

  1. Una llamada welcome.php en la carpeta raíz, que contiene todas las marcas HTML.
  2. Y otra llamada welcome.inc.php en la carpeta inc, que contiene todas las funciones PHP específicas de la página welcome.php.

EDITAR: Otro beneficio de usar la doble extensión .inc.php sería que cualquier IDE todavía puede reconocer el archivo como código PHP.

+3

+1 Vale la pena mencionar que lo hice en uno de mis proyectos. – dpp

Cuestiones relacionadas