הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 23-12-06, 12:06   # 1
WebProject
מ.תיכנות
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: אשדוד
הודעות: 3,070
Send a message via Skype™ to WebProject

WebProject לא מחובר  

[מדריך] קריאת קובץ XML בעזרת PHP

שבת שלום, וחג חנוכה שמח

די משעמם לי עכשיו, חיפשתי נושא לכתוב עליו, ונתקלתי באשכול של המשתמש sUP, אז החלטתי לכתוב מדריך על הנושא.

עבודה עם XML

מה עבודה עם XML יכולה לתת לי?

בעזרת XML תוכלו לשמור פרטים חיוניים, ליצור קבצי RSS שיהיה ניתנים לקריאה על ידי מספר תוכנות, ובעצם תוכלו ליצור קובץ עידכונים של אתרכם, שמשתמשים אחרים יוכלו לקרוא ללא צורך בדפדפן עצמו, אבל לא על זה אני רוצה להסביר במדריך זה.

במדריך זה אני אסביר איך ליצור קובץ XML בסיסי, ודרך קובץ PHP, לשלוף ממנו נתונים ולעשות בהם שימוש באתר אינטרנט.

בכללי, קובץ XML הינו קובץ המורכב מתגיות שאינם מוגדרות כמו HTML, אלא שכאן יש בידכם לקבוע את התגיות בעצמכם, ואת הפרמטרים שלהם, דבר שכמובן אינו דורש תיקניות כמו בHTML.

כל קובץ XML נפתח על ידי השורה הבאה:

PHP קוד:
  <?xml version="X" encoding="Y" ?>
כאשר version מציין את גירסת הXML, וencoding את הקידוד של הדף.

יצירת קובץ XML בסיסי

ברגע זה אנו ניצור קובץ XML, אשר שורתו הראשון תהיה הגדרת קובץ XML, דבר אשר יעשה על ידי הקוד שנכתב למעלה.

על מנת להמחיש את האפשרויות שניתנות לעשייה על ידי XML, אנו נבחר בקובץ XML אשר מכיל מידע על אתר אינטרנט כלשהו.
example.xml

PHP קוד:
<?xml version="1.0" encoding="iso-8859-1" ?> 
<sites>
    <site>
            <name>WebProject</name>
            <author>Tal Gleichger</author>
            <adress>http://webproject.co.il</adress>
    </site>
    <site>
            <name>Hosts</name>
            <author>Alon</author>
            <adress>http://hosts.co.il</adress>
    </site>
</sites>
מה שעשינו בקובץ זה הוא הגדרה של שני אתרים בעלי הפרטים הבאים:

שם: WebProject
יוצר: Tal
כתובת: http://webproject.co.il
--
שם: Hosts
יוצר: Alon
כתובת: http://hosts.co.il

שליפת הנתונים והדפסתם כפלט HTML

על מנת לשלוף נתונים מן קובץ הXML, עלינו להגדיר אלמנט חדש, SimpleXMLElement.

PHP קוד:
$XMLFile 'example.xml';
$xml = new simpleXMLElement($XMLFile,null,true); 
הסבר מהיר,
$XMLFile - קובץ הXML אשר בו הנתונים אשר ברצוננו לשלוף
null - מסמל אפשרויות, פרמטר אשר אליו לא תצטרכו להתייחס, ועדיף שתשאירו כערך ריק (null)
true - האם הפרמטר הראשון ($XMLFILE) מסמל כתובת (URL), במקרה זה, כן, כתובת של הקובץ אליו אנו נגשים, ולכן נכתב true, אשר משמעותו "אמת".
לאחר שלב זה, על שעלינו לעשות, זה לגשת לכל מערך על ידי שימוש במשתנה $xml, בצורה הבאה:

PHP קוד:
$xml -> site[0] -> name// site 1 [webproject]
$xml -> site[1] -> name // site 2 [hosts] 
כמו שראיתם, הגישה למערכים הינה פשוטה, ועכשיו, נוכל להדפיס את כל הנתונים בקלות בצורה הבאה:

example.php

PHP קוד:
<?Php
$xml 
= new simpleXMLElement('example.xml',null,true);
  
$num count($xml -> site);
      for(
$i 0$i $num$i++)
       {
          print 
'Sites name: '.$xml ->  site[$i] -> name.'<br />';
          print 
'Sites author: '.$xml -> site[$i] -> author.'<br />';
          print 
'Sites adress: '.$xml ->  site[$i] -> adress.'<br /><br />';
       } 
?>
מכיוון שאיננו יודעים מה מספר האתרים הנמצא בתוך הקובץ, הרצתי את הפונקציה count, והכנסתי כערך לתוכה את המערך site, פונקציה זאת בעצם סופרת כמה פעמים המערך קיים בקובץ, ואז מחזירה מספר שלם, אשר הצבתי בלולאה על מנת להדפיס את הנתונים כמספר האתרים הקיים במערכת.

תגובה למשתמש tnadav, על מנת לגשת לפרמטר בתוך התגית עצמה (name="sitesname") עליך פשוט לפנות אליו בצורה הבאה:

PHP קוד:
$xml -> site[array][value
ובהתאם לקוד PHP שניתן למעלה,
PHP קוד:
$xml -> site[$i]['name']; 
- מקווה שעזר למישהו חג שמח =]

__________________
כושר קרבי \ טיפים לגיבושים



פורטל רעל - צבא וכושר קרבי

Last edited by WebProject; 23-12-06 at 12:38..
  Reply With Quote
ישן 23-12-06, 12:16   # 2
Matchs
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: מרכז.
הודעות: 935

Matchs לא מחובר  

תודה.. אחלה מדריך
__________________
לפניות, אנא השאירו לי הודעה פרטית.
Matchs.
  Reply With Quote
ישן 23-12-06, 12:27   # 3
null
кто ты?
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 2,177

null לא מחובר  

עד כמה שזכור לי SimpleXML עובד רק מPHP5,
תקן אותי אם אני טועה
  Reply With Quote
ישן 23-12-06, 12:29   # 4
tnadav
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2006
הודעות: 216

tnadav לא מחובר  

שני דברים, דבר ראשון:
PHP קוד:
$xml = new simpleXMLElement('example.xml',null,true); 
מה מסמן ה- NULL או ה- True?

דבר שני:
אם יש לי קובץ XML כזה:
קוד:
<?xml version="1.0" encoding="iso-8859-1" ?> 
<sites>
    <site name="WebProject" author="Tal Gleichger" adress="http://webproject.co.il" />
    <site name="Hosts" author="Alon" adress="http://hosts.co.il" /> 
</sites>
איך ניגשים ל- name או adress או author?

סה"כ מדריך מעולה, אני חושב שהיה פה מקום ליותר פירוט
__________________
"אני לא מעצב גרפי... אני לא פלאשר תותח... בטח שלא מנכ"ל של חברת בניית אתרים, כעיקרון אסור לי להיות מועסק.. אבל אני... מתכנת ב-PHP , וגם, לא ממש מציעה.." (יצא לי מוזר משהו...חח)
  Reply With Quote
ישן 23-12-06, 12:33   # 5
null
кто ты?
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 2,177

null לא מחובר  

בשביל הXML קיים,
כדי למנוע מצבים כאלה,
ולהפוך אותם כמו בדוגמא של טל.
  Reply With Quote
ישן 23-12-06, 12:40   # 6
WebProject
מ.תיכנות
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: אשדוד
הודעות: 3,070
Send a message via Skype™ to WebProject

WebProject לא מחובר  

ציטוט:
נכתב במקור על ידי tnadav צפה בהודעה
שני דברים, דבר ראשון:
PHP קוד:
$xml = new simpleXMLElement('example.xml',null,true); 
מה מסמן ה- NULL או ה- True?

דבר שני:
אם יש לי קובץ XML כזה:
קוד:
<?xml version="1.0" encoding="iso-8859-1" ?> 
<sites>
    <site name="WebProject" author="Tal Gleichger" adress="http://webproject.co.il" />
    <site name="Hosts" author="Alon" adress="http://hosts.co.il" /> 
</sites>
איך ניגשים ל- name או adress או author?

סה"כ מדריך מעולה, אני חושב שהיה פה מקום ליותר פירוט
תוקן המדריך בהתאם למה שביקשת, וGOOGLE, כן, זה PHP5
__________________
כושר קרבי \ טיפים לגיבושים



פורטל רעל - צבא וכושר קרבי
  Reply With Quote
ישן 23-12-06, 16:28   # 7
DCB
חבר על
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 966

DCB לא מחובר  

מדריך מעולה.
יעיל גם ליצירת פלאשים דינאמיים
  Reply With Quote
ישן 23-12-06, 17:09   # 8
DorWD
תודה על תרומתך.
 
DorWD's Avatar
 
מיני פרופיל
תאריך הצטרפות: Jan 2006
מיקום: עפולה
גיל: 31
הודעות: 2,259

DorWD לא מחובר  

טל מעולה!
חיפשתי כזה!
תודה ישמן
__________________
מתכנת WEB
  Reply With Quote
ישן 23-12-06, 18:20   # 9
בניה
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: נחושה
הודעות: 3,434

בניה לא מחובר  

כל הכבוד על המדריך
  Reply With Quote
ישן 23-12-06, 19:16   # 10
Gal Shafrir
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 1,626

Gal Shafrir לא מחובר  

תודה רבה על המדריך טל
__________________
בברכה,
גל שפריר - מעצב ומפתח אתרים.

עופר שפריר - במאי, תסריטאי ומפיק.
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 18:57.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ