Что означает.: В php include_path?

Я пытаюсь установить Zend на машину под управлением xampp. В справочном файле Zend сказано, что для настройки инструментов командной строки мне нужно убедиться, что содержимое каталога / library находится внутри моего каталога php include_path.

Когда я смотрю на свой php.ini, include_path закомментируется, но значение выглядит так:

; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"

Где именно указывает include_path? Я довольно новичок в Linux, и никогда не видел. Как часть пути к файлу.

10
задан 25 April 2014 в 18:35

2 ответа

: это разделитель в списке каталогов.

. означает текущий каталог

Так что, когда скрипт php ищет включаемый файл, он будет выглядеть в том же каталоге, что и файл php, и /php/include.

0
ответ дан 25 April 2014 в 18:35

.: на самом деле просто . (поскольку : - это ключевое слово, которое разделяет несколько путей), что означает, что текущая папка, в которой выполняется скрипт, включена как часть include_path. Таким образом, когда у вас есть два файла в одном каталоге:

index.php
include-me.php

Вы можете включить второй в PHP с помощью include('include-me.php');. Без . на пути вы не сможете этого сделать.

Таким образом, чтобы завершить установку, как уже упоминалось, вам нужно будет либо поместить содержимое /library в ту же папку, в которой находится скрипт, над которым вы работаете, либо в /php/includes (Конечно, вы удалите ; из файла INI). Вы также можете создать другой каталог - например, /opt/Zend/library и добавить /opt/Zend/library в оператор включения пути: include_path = ".:/php/includes:/opt/Zend/library"

И наконец - поскольку вы работаете в Ubuntu, рекомендуется вместо этого использовать установку LAMP в Ubuntu (Большинство вся документация предполагает, что вы используете). Это можно установить, удалив XAMPP и выполнив sudo tasksel install lamp-server, который установит Apache 2.2, MySQL, PHP 5.3 в систему. Как описано в Какой самый простой способ настроить стек LAMP?

0
ответ дан 25 April 2014 в 18:35

Другие вопросы по тегам:

Похожие вопросы: