Rumah > Soal Jawab > teks badan
P粉9767371012023-08-22 16:44:45
Jika saya faham anda dengan betul, anda mempunyai dua folder, satu di mana skrip php yang anda mahu include
ke dalam folder lain?
Jika ini berlaku, anda hanya perlu mengikut laluan dengan betul. Andaikan struktur folder anda adalah seperti berikut:
root includes php_scripts script.php blog content index.php
Jika ini ialah struktur folder yang anda buat, dan anda ingin memasukkan fail "Script.php" ke dalam folder "index.php", anda perlu memasukkannya seperti ini:
include("../../../includes/php_scripts/script.php");
Cara saya melakukannya adalah secara visual. Saya meletakkan penunjuk tetikus saya di atas index.php (untuk melihat struktur fail), dan setiap kali saya naik folder, saya menaip "../" lain. Kemudian anda perlu memastikan bahawa anda pergi ke struktur folder di atas folder yang anda mahu mula masuk. Selepas itu, ia adalah hierarki folder biasa.
P粉6148403632023-08-22 09:38:21
Anda boleh mengakses $_SERVER['DOCUMENT_ROOT']
direktori akar dari dalam setiap tapak menggunakan . Hanya untuk ujian, anda boleh mencetak laluan untuk memastikan ia berfungsi, jika anda melakukannya dengan cara yang betul. Anda pasti tidak mahu menunjukkan laluan pelayan tempatan, contohnya mengandungi dan memerlukan .
Tapak 1
echo $_SERVER['DOCUMENT_ROOT']; //应该是 '/main_web_folder/';
Fail yang disertakan di bawah tapak 1 hendaklah di:
echo $_SERVER['DOCUMENT_ROOT'].'/includes/'; // 应该是 '/main_web_folder/includes/';
Tapak 2
echo $_SERVER['DOCUMENT_ROOT']; //应该是 '/main_web_folder/blog/';
Kod sebenar untuk mengakses termasuk fail dari Tapak 1 dari Tapak 2:
include($_SERVER['DOCUMENT_ROOT'].'/../includes/file_from_site_1.php');
Jika anda cuba mengakses fail dengan mengecualikan document root
和root
slash, hanya path relatif kepada fail yang pertanyaan dijalankan akan digunakan (bukan maksum atau bukan platform khusus):
include('../includes/file_from_site_1.php');
Laluan yang disertakan tidak mempunyai tempat dalam mana-mana kod pada bahagian hadapan tapak (dalam talian) dan harus digunakan dengan selamat dalam Persekitaran pengeluaran sahaja.
Selain itu, untuk URL tapak itu sendiri, anda boleh menjadikannya relatif kepada nama domain. Pelayar mengisi selebihnya secara automatik kerana mereka tahu halaman yang mereka lihat. Jadi, jangan gunakan:
<a href='http://www.__domain__name__here__.com/contact/'>联系</a>
Sebaliknya gunakan:
<a href='/contact/'>联系</a>
Untuk SEO yang baik, anda perlu memastikan URL blog anda tidak wujud pada domain lain, jika tidak, ia mungkin ditandakan sebagai tapak pendua. Dalam kes ini, anda juga mungkin mahu menambah baris pada fail untuk robots.txt
Tapak 1 Sahaja:
User-agent: * Disallow: /blog/
Cari alamat IP anda dan sertakan coretan kod berikut:
function is_dev(){ //使用来自Google的外部IP。 //如果您在本地托管,它是127.0.01,除非您更改了它。 $ip_address='xxx.xxx.xxx.xxx'; if ($_SERVER['REMOTE_ADDR']==$ip_address){ return true; } else { return false; } } if(is_dev()){ echo $_SERVER['DOCUMENT_ROOT']; }
Ingat, jika ISP anda menukar IP anda, contohnya jika anda mempunyai IP dinamik DCHP, anda perlu menukar IP dalam fail ini untuk melihat hasilnya. Saya syorkan meletakkan fail itu dalam fail sertakan dan kemudian memerlukannya pada halaman nyahpepijat.
Jika anda mempunyai akses kepada kaedah moden seperti Console log penyemak imbas anda, anda boleh menggunakan kod berikut dan melihatnya dalam antara muka nyahpepijat penyemak imbas anda:
if(is_dev()){ echo "<script>".PHP_EOL; echo "console.log('".$_SERVER['DOCUMENT_ROOT']."');".PHP_EOL; echo "</script>".PHP_EOL; }