Pathjoin adalah pustaka PHP untuk menormalkan dan bergabung dengan jalur sistem file. Tujuan perpustakaan ini adalah untuk membuat lebih mudah untuk bekerja dengan jalur sistem file tidak terlepas dari platform dan pemisah direktori sistem.
Tujuan normalisasi jalur file adalah untuk memberikan representasi jalur file tunggal yang konsisten. Dengan kata lain, normalisasi di perpustakaan ini akan sembuh . dan .. Referensi Direktori dan juga memadatkan banyak pemisah direktori menjadi satu. Ini membuatnya lebih mudah untuk menghindari masalah umum ketika membandingkan jalur satu sama lain.
Sementara PHP menyediakan fungsi realpath() bawaan, itu tidak dapat digunakan dalam setiap kasus karena berfungsi dengan menggunakan sistem file. Perpustakaan ini hanya menggabungkan dan menormalkan jalur menggunakan penanganan string. Tidak ada persyaratan agar file atau direktori dapat dibaca atau bahkan ada.
Dokumentasi API tersedia di: http://kit.riima.net/api/pathjoin/
Cara termudah untuk menginstal perpustakaan ini adalah dengan menggunakan komposer untuk menangani ketergantungan Anda. Untuk menginstal pustaka ini melalui komposer, cukup ikuti dua langkah ini:
Dapatkan composer.phar dengan menjalankan instalasi baris perintah komposer di root proyek Anda.
Setelah Anda menjalankan skrip instalasi, Anda harus memiliki file composer.phar di root proyek Anda dan Anda dapat menjalankan perintah berikut:
php composer.phar require "riimu/kit-pathjoin:^1.2"
Setelah menginstal pustaka ini melalui komposer, Anda dapat memuat pustaka dengan memasukkan file vendor/autoload.php yang dihasilkan oleh komposer selama instalasi.
Jika Anda sudah terbiasa dengan cara menggunakan komposer, Anda dapat menambahkan perpustakaan sebagai ketergantungan dengan menambahkan file composer.json berikut ke proyek Anda dan menjalankan perintah composer install :
{
"require" : {
"riimu/kit-pathjoin" : " ^1.2 "
}
} Jika Anda tidak ingin menggunakan komposer untuk memuat perpustakaan, Anda juga dapat mengunduh perpustakaan secara manual dengan mengunduh rilis terbaru dan mengekstraksi folder src ke proyek Anda. Anda kemudian dapat memasukkan file src/autoload.php yang disediakan untuk memuat kelas perpustakaan.
Perpustakaan ini menyediakan dua metode yang nyaman, Path::normalize() dan Path::join() . Kedua metode ini bekerja dengan cara yang sangat mirip. Perbedaan utama adalah bahwa sementara metode join() dapat menerima beberapa jalur untuk bergabung, normalize() hanya akan menerima satu jalur. Kedua metode akan mengembalikan jalur yang dinormalisasi sebagai hasilnya.
Contoh berikut akan berisi berbagai kasus penggunaan perpustakaan:
<?php
require ' vendor/autoload.php ' ;
use Riimu Kit PathJoin Path ;
// Both of the following will output 'foo/bar' on Unix and 'foobar' on Windows
echo Path:: normalize ( ' foo/bar ' ) . PHP_EOL ;
echo Path:: join ( ' foo ' , ' bar ' ) . PHP_EOL ;
// The join method accepts multiple arguments or a single array
echo Path:: join ( ' foo ' , ' bar ' , ' baz ' ) . PHP_EOL ; // outputs 'foo/bar/baz'
echo Path:: join ([ ' foo ' , ' bar ' , ' baz ' ]) . PHP_EOL ; // outputs 'foo/bar/baz'
// The '.' and '..' directory references will be resolved in the paths
echo Path:: normalize ( ' foo/./bar/../baz ' ) . PHP_EOL ; // outputs 'foo/baz'
echo Path:: join ([ ' foo/./ ' , ' bar ' , ' ../baz ' ]) . PHP_EOL ; // outputs 'foo/baz'
// Only the first path can denote an absolute path in the join method
echo Path:: join ( ' /foo ' , ' /bar/baz ' ) . PHP_EOL ; // outputs '/foo/bar/baz'
echo Path:: join ( ' foo ' , ' /bar ' ) . PHP_EOL ; // outputs 'foo/bar'
echo Path:: join ( ' foo ' , ' ../bar ' , ' baz ' ) . PHP_EOL ; // outputs 'bar/baz'
echo Path:: join ( '' , ' /bar ' , ' baz ' ) . PHP_EOL ; // outputs 'bar/baz'
// Relative paths can start with a '..', but absolute paths cannot
echo Path:: join ( ' /foo ' , ' ../../bar ' , ' baz ' ) . PHP_EOL ; // outputs '/bar/baz'
echo Path:: join ( ' foo ' , ' ../../bar ' , ' baz ' ) . PHP_EOL ; // outputs '../bar/baz'
// Empty paths will result in a '.'
echo Path:: normalize ( ' foo/.. ' ) . PHP_EOL ;
echo Path:: join ( ' foo ' , ' bar ' , ' ../.. ' ) . PHP_EOL ; Path::normalize() juga menerima parameter kedua $prependDrive yang mengambil nilai boolean dan default ke true. Pada platform Windows, surat drive adalah bagian penting dari jalur absolut. Dengan demikian, ketika parameter diatur ke True, metode ini akan menyiapkan huruf drive dari direktori kerja saat ini ke jalur absolut jika jalur absolut tidak memberikan satu itu sendiri.
Contoh berikut berlaku untuk sistem Windows, jika direktori kerja terletak di drive C::
<?php
require ' vendor/autoload.php ' ;
use Riimu Kit PathJoin Path ;
echo Path:: normalize ( ' /foo/bar ' ) . PHP_EOL ; // outputs 'C:fooBar'
echo Path:: normalize ( ' D:/foo/bar ' ) . PHP_EOL ; // outputs 'D:fooBar'
echo Path:: normalize ( ' /foo/bar ' , false ) . PHP_EOL ; // outputs 'fooBar' Perpustakaan ini adalah Hak Cipta (C) 2014-2017 Riikka Kalliomäki.
Lihat Lisensi untuk Lisensi dan Informasi Menyalin.