я следующий код из Codeigniter index.php
Что означает __FILE__?
Я понимаю, что,
Если /
позиции строки в $system_folder
(в данном случае CIcore_1_7_1) является false
, и если realpath
функция существует и (?) Является не false
, $system_folder
принадлежит (?) /$system_folder
. еще $system_folder
присвоен $system_folder
с заменой \\
на /
.
Q1. Что означает функция realpath?
Q2. Что это значит?
@realpath(dirname(__FILE__))
Q3. Я прав? Есть ли у меня какие-то недоразумения?
Q4. Какая ситуация вам нужна?
str_replace("\\", "/", $system_folder)
$system_folder = "CIcore_1_7_1";
/*
|---------------------------------------------------------------
| SET THE SERVER PATH
|---------------------------------------------------------------
|
| Let's attempt to determine the full-server path to the "system"
| folder in order to reduce the possibility of path problems.
| Note: We only attempt this if the user hasn't specified a
| full server path.
|
*/
if (strpos($system_folder, '/') === FALSE)
{
if (function_exists('realpath') AND @realpath(dirname(__FILE__)) !== FALSE)
{
$system_folder = realpath(dirname(__FILE__)).'/'.$system_folder;
}
}
else
{
// Swap directory separators to Unix style for consistency
$system_folder = str_replace("\\", "/", $system_folder);
}
Почему существуют два \ s, а не один \? – shin
Поскольку символ \ escape-символ - чтобы поставить цитату внутри строки, которую вы используете, это «цитата». Поэтому, чтобы поставить обратную косую черту, вам нужно два из них: «это \\ обратная косая черта», – Greg