ฉันมีปัญหาในการรับ directroy อัพโหลดจาก drupal มีฟังก์ชั่นที่คืนค่าพา ธ สัมพัทธ์หรือพา ธ สัมบูรณ์หรือไม่?
ฉันมีปัญหาในการรับ directroy อัพโหลดจาก drupal มีฟังก์ชั่นที่คืนค่าพา ธ สัมพัทธ์หรือพา ธ สัมบูรณ์หรือไม่?
คำตอบ:
ข้อมูลนี้ถูกบันทึกไว้ในตารางตัวแปรของ Drupal ใช้variable_getฟังก์ชั่นเพื่อรับข้อมูลนี้ส่งผ่านชื่อของตัวแปรที่ถูกต้อง:
variable_get('file_public_path', conf_path() . '/files');variable_get('file_private_path');หากคุณต้องการใช้ไดเรกทอรีอัปโหลดชั่วคราวvariable_get('file_temporary_path');หากคุณต้องการกำหนดไดเรกทอรีอัปโหลดเฉพาะระบบโดยไม่คำนึงถึงการกำหนดค่าไซต์จริงให้ใช้file_directory_tempฟังก์ชัน
variable_get('file_public_path', conf_path() . '/files'); จะดึงเส้นทางเริ่มต้นสำหรับคุณในกรณีที่ไม่ได้รับการแก้ไขหรือกำหนดอย่างชัดเจนโดยผู้ดูแลเว็บไซต์
variable_get('file_public_path', conf_path() . '/files');โดยทั่วไปแล้วจะดึงเส้นทางเริ่มต้นสำหรับคุณในกรณีที่ยังไม่ได้แก้ไขหรือตั้งค่าอย่างชัดเจนโดยผู้ดูแลไซต์
                    drupal_realpathวิธีแก้ปัญหาด้านล่าง ดูเหมือนว่าถูกกฎหมายมากขึ้น
                    ในการรับพา ธ ของระบบไฟล์สัมบูรณ์ให้ใช้drupal_realpath (Drupal API)แทนfile_create_url:
drupal_realpath('public://'); 
// returns e.g. /var/www/drupal/sites/default/files
drupal_realpath('private://');
// returns e.g. /var/www/drupal/sites/default/files_private
              คุณยังสามารถใช้ฟังก์ชันเหล่านี้เพื่อรับ URL ที่ถูกต้องจาก uri ที่สัมพันธ์กัน:
file_create_url('public://');
file_create_url('private://');
พวกเขากลับเส้นทางไปยังโฟลเดอร์สาธารณะหรือส่วนตัว
public://,,private://ฯลฯ เพื่อหลีกเลี่ยงความขัดแย้งของโฟลเดอร์ใช้ประโยชน์จาก Drupal 7 :))