..


ลิงก์ผู้สนับสนุน

การคัดกรองคุณสมบัติของโปรแกรมของเราในความสัมพันธ์กับสภาพแวดล้อม

บทความที่เขียนโดย Riccardo Brambilla
หน้า 1 จาก 4

เราเริ่มต้นด้วยการอธิบายสิ่งที่เราหมายโดยการกรองแบบไดนามิก
กับการแสดงออกนี้เราหมายถึงกลไกในการจัดให้มีการเรียน / สคริปต์ของเรากรองคุณสมบัติทั่วไป แต่ที่ในความสัมพันธ์กับสภาพแวดล้อมที่เรากำลังทำงาน (ท้องถิ่น, การทดสอบการผลิต)

มันเป็นกลไกที่พบบ่อยใน Java แต่ไม่ได้อยู่ใน PHP สำหรับเหตุผลง่ายๆว่าแนวคิดของการใช้งานเป็นที่เข้าใจกันโดยทั่วไปจะไม่เกี่ยวข้องกับภาษาที่รักของเรา และ'ในความเป็นจริงค่อนข้างบ่อยสคริปต์การทดสอบทั้งในประเทศและจากนั้นคัดลอกไฟล์ผ่านทาง ftp ในการทดสอบของเราหรือ (เลว) โดยตรงในการผลิตที่

ในที่ทำงาน แต่เป็นประโยชน์มากที่จะมีการกรองออกโดยอัตโนมัติขึ้นอยู่กับคุณสมบัติที่โปรแกรมของเราต้องทำงานใน localhost หรือบนเครื่องอื่น ๆ (เช่น frontend, สัมผัสกับด้านนอก) ดังนั้นในบทความนี้เราจะสร้างกรอบเดียวในการดำเนินการ ชนิดนี้ของตรรกะในโครงการ PHP ของเราสมมุติ
การทำเช่นนี้เราจะไม่ใช้แพคเกจภายนอกหรือนามธรรมที่พิเศษที่เราต้องเป็น XML, เรียน PHP และไฟล์ข้อความ

มีแนวคิดที่จะกำหนดในไฟล์ xml ในการคุณสมบัติทั่วไปของเราสร้างไฟล์สำหรับแต่ละสภาพแวดล้อมเพื่อเพิ่มพวกเขาและเขียนโค้ดที่ทำให้มันทั้งหมดเข้าด้วยกันบางอย่าง โครงสร้างของโปรแกรมการทดสอบของเราจะ :

  1. เรียนยังโฟลเดอร์ที่มี PropertyManager.class.php ชั้นเรียน
  2. config ที่มีโฟลเดอร์ที่อยู่ภายในแฟ้มและโฟลเดอร์ app_properties.xml ตัวกรอง
  3. โฟลเดอร์ที่มีไฟล์สามตัวกรอง : local.filter.properties, test.filter.properties pro.filter.properties,
  4. ไฟล์ PHP ที่มีโค้ดสำหรับการทดสอบการดำเนินงานของการแก้ปัญหาของเราที่ : index.php

ที่นี่โครงสร้างพื้นฐานของ

โครงสร้างเช่นการกรอง

xml ที่

ลองดูว่าไฟล์ที่ถูกสร้างขึ้น :






 <? รุ่น xml = การเข้ารหัส"1.0"="UTF - 8"?>







 <properties>



  



 <property name="__app_version" value="0.0.1" />

	

  



 <property name="messaggio_variabile" value="" />



  



 <property name="url_servizio_esterno" value="" />



  



 <property name="local" value="localhost" />



  



 <property name="test" value="test.qualchedominio.it" />



  



 <property name="pro" value="prod.qualchedominio.it" />







 </> Properties



นอกจากนี้แท็ก XML ที่ปกติกำหนดเอกสารที่จะเริ่มต้นเป็นภาชนะ <properties> แท็กในที่เราใส่ชุดของแท็ก <property> ที่สามตัวแรกจะเป็นคนที่จะให้บริการในตัวอย่างที่สามล่าสุดที่เกี่ยวข้องกับการเป็นเจ้าภาพและให้บริการต่างๆ PHP เพื่อให้เข้าใจในสิ่งที่สภาพแวดล้อมที่เราทำงานแบบไดนามิก

ที่นี่เรา deine การทดสอบสภาพแวดล้อมในท้องถิ่นและการผลิต แต่ไม่มีอะไรป้องกันไม่ให้คุณกำหนดคนอื่น ๆ เช่น dev สำหรับแต่ละห้องจะแสดง URL ที่ฐานซึ่งมีมูลค่าตามความต้องการของเราโดยการประยุกต์ใช้โปรแกรม
ในสถานการณ์ของเราเรามีเครื่องทดสอบการเข้าถึง'URL test.qualchedominio.it และการผลิตเป็นอย่างดีจาก prod.qualchedominio.it ถึงหลักสูตรที่ localhost

คุณสมบัติของไฟล์ .*

ขั้นต่อไปคือเพื่อให้แน่ใจว่าคุณสมบัติที่กำหนดไว้ใน XML มีมูลค่าแตกต่างกันขึ้นอยู่กับสภาพแวดล้อมของ'ที่เรามี เราใช้เพื่อวัตถุประสงค์ในการใช้แฟ้มข้อความนี้ในโฟลเดอร์ตัวกรองให้ดูที่เนื้อหาอย่างใดอย่างหนึ่งโดยหนึ่ง

local.filter.properties






 ; [ท้องถิ่น] คุณสมบัติตัวกรอง







 messaggio_variabile ="เรา"ท้องถิ่น







 url_servizio_esterno = http://dev-servizio.esterno.it



test.filter.properties






 ; [Test] คุณสมบัติตัวกรอง







 messaggio_variabile ="เราทดสอบ"







 url_servizio_esterno = http://test-servizio.esterno.it



pro.filter.properties






 ; [PRO] คุณสมบัติตัวกรอง







 messaggio_variabile ="การผลิตเรา"







 http://prod-servizio.esterno.itit url_servizio_esterno =



โปรดทราบว่าคุณสมบัติ"__app_version"ที่กำหนดไว้ใน XML จะไม่นิยามในแฟ้มที่แตกต่างกันก็จะถือว่าเพื่อวัตถุประสงค์ทั้งหมดเป็นทรัพย์สินร่วมกันระหว่างสภาพแวดล้อมที่หลากหลายและไม่มีการเปลี่ยนแปลงจึงจะไม่ถูกกรอง

ในประเภทเดียวกัน ...
E - Learning
ลินุกซ์ (หลักสูตร) ลินุกซ์ (หลักสูตร)
คู่มือที่สมบูรณ์ในระบบเปิดแหล่งที่มา จาก 49 €
MySQL (Course) MySQL (Course)
การบริหารจัดการฐานข้อมูลโอเพนซอร์ส จาก 39 €
PHP (หลักสูตร) PHP (หลักสูตร)
หลักสูตรเต็มสำหรับการสร้างเว็บไซต์แบบไดนามิก จาก 49 €
ลิงก์ผู้สนับสนุน