path_join() WP 2.5.0
Объединяет (склеивает) два переданных системных пути в один, если второй указанный путь не абсолютный, иначе просто вернет второй путь.
Логика такая: дай мне $path
относительно $base
, но если $path
абсолютный, то просто верни его...
При склейке добавляет слэш /, если его нет в $base
.
Работает на основе:
path_is_absolute()
✈ 1 раз = 0.000061с = очень быстро | 50000 раз = 0.05с = скорость света | PHP 7.1.1, WP 4.7.2
Хуков нет.
Возвращает
Строку. Склеенный или нет абсолютный путь.
Использование
path_join( $base, $path );
- $base(string)
- Базовый путь, который должен быть в начале $path.
- $path(string)
- Путь от $base.
Примеры
#1 Демонстрация склейки двух путей.
echo path_join('/var/site.ru', '/wp_content/uploads'); //> /wp_content/uploads echo path_join('/var/site.ru', 'wp_content/uploads'); //> /var/site.ru/wp_content/uploads echo path_join('/var/site.ru', ''); //> /var/site.ru/ echo path_join('/var/site.ru', '\path'); //> \path echo path_join('/var/site.ru', 'c:\\path'); //> c:\\path
#1 Подключим файл
Допустим мы заранее не знаем как будет передаваться файл: абсолютным путем или просто его название. В таком случае пригодится эта функция... Если указано имя файла, то к нему будет добавлена база (путь), если указан полный путь файла, то ничего не будет добавлено:
$path = path_join( '/var/site/wp-content/', $file );
Теперь, $file может быть: file.php или /var/site/wp-content/file.php. В обоих случаях вернется путь до файла: /var/site/wp-content/file.php
Код path join:
wp-includes/functions.php
VER 5.0.3
Cвязанные функции
Из метки: path directory (путь папка)
Еще из раздела: Вспомогательные
- __return_empty_array()
- __return_empty_string()
- __return_false()
- __return_null()
- __return_true()
- __return_zero()
- build_query()
- get_page_hierarchy()
- is_email()
- is_serialized()
- is_serialized_string()
- map_deep()
- maybe_serialize()
- maybe_unserialize()
- seems_utf8()
- stripslashes_deep()
- timer_stop()
- urlencode_deep()
- wp_array_slice_assoc()
- wp_debug_backtrace_summary()
- wp_doing_ajax()
- wp_extract_urls()
- wp_filter_object_list()
- wp_generate_uuid4()
- wp_html_split()
- wp_is_numeric_array()
- wp_is_uuid()
- wp_json_encode()
- wp_kses_array_lc()
- wp_kses_hair()
- wp_kses_uri_attributes()
- wp_list_filter()
- wp_list_pluck()
- wp_list_sort()