Pregunta sobre la inclusión de archivos con require_once

He descargado esto API.

Si va a lib / Paypal / Profile / Handler / Array.php encontrará esta línea:

require_once 'PayPal.php';

Dado que el archivo PayPal.php está en la carpeta lib /, esperaba algo como esto:

require_once '../../../../PayPal.php'

Entonces ... ¿dónde se establece cuál es la carpeta "raíz" de la API?

NOTA: mi pregunta tiene una razón: estoy tratando de saber por qué recibo un error como este:

Advertencia: require_once (PayPal.php): no se pudo abrir la transmisión: no existe ese archivo o directorio en /home/me/app1/plugins/mbpPlatformFrontendPlugin/lib/paypal/PayPal/Profile/Handler/Array.php en la línea 9

saludos

javi

preguntado el 16 de mayo de 11 a las 17:05

4 Respuestas

Cuando ejecuta el instalador integrado (/install.php), agrega código para configurar el include_path aquí:

install.php[130-135]

$code = "<?php\n" .
    "//*******************************************\n" .
    "// AUTO-GENERATED include for PayPal PHP SDK\n" .
    "// Created by install.php on $stamp\n" .
    "//*******************************************\n\n" .
    "set_include_path('$sdk_dir' . DIRECTORY_SEPARATOR . '" . $libdir . "' . PATH_SEPARATOR . get_include_path());\n";

Por eso el README.html file le dice que ejecute el instalador incluido para poder usar las muestras.

contestado el 16 de mayo de 11 a las 22:05

Intenta encontrar esto:

Establecer ruta de inclusión

contestado el 16 de mayo de 11 a las 22:05

PHP tiene lo que se llama include_path que especifica dónde busca por defecto los archivos para incluir / requerir. Puede configurarlo en su php.ini o en su código usando set_include_path ().

contestado el 16 de mayo de 11 a las 22:05

Supongo que el archivo Array.php está incluido en otro archivo, que se ejecuta desde otro lugar (probablemente la raíz).

Cuando incluya (o requiera) otro archivo php, se ejecutará con la misma ruta que el script que lo incluyó (que puede ser incluido internamente y, por lo tanto, ejecutado en la ruta de otro script).

contestado el 16 de mayo de 11 a las 22:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.