הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   שילוב HTML עם php, מה מומלץ? (https://hosts.co.il/forums/showthread.php?t=59270)

phpyo 22-01-08 23:10

שילוב HTML עם php, מה מומלץ?
 
שלום!

אני בונה כרגע מערכת שקשורה בהצגת תכנים ממסד נתונים.
אני רוצה שהתכנים יוצגו מעוצבים, משמע שיהיו תחת תגי HTML.
השאלה שלי היא, מה הכי מומלץ מבין הדרכים הבאות :

1.

PHP קוד:

<html> 
<table>
<Tr><td>
<?php
      
........
?>
</td></tr>
</table>
</html>

PHP קוד:

<?php
 
echo "<table><tr>
for(....;;;)
{
        echo "
<td>....</td>";
}
echo "
</tr></table>";
?>

מה מבין אלו הכי טובות?
האם יש דרך מקצועית וטובה יותר?

תודה!

NDVNDV 22-01-08 23:16

לפי מה שאני יודע פתיחה של php גוזלת משאבים...
אז השניה...
אני מעדיף בכלל

קוד:

echo <<<html
...
html;

הכי נוח לדעתי

JoinWeb.co.il 23-01-08 01:39

דרך נוספת

printf

http://il2.php.net/printf

Labs 23-01-08 07:24

ציטוט:

נכתב במקור על ידי NDVNDV (פרסם 602815)
לפי מה שאני יודע פתיחה של php גוזלת משאבים...
אז השניה...
אני מעדיף בכלל

קוד:

echo <<<html
...
html;

הכי נוח לדעתי

|Rolleyes| אני לא יודע לגבי משאבים אבל אני עושה כמוך בגלל שזה הכי קצר (אני עצלן|Rolleyes|)

ToxicBoy21 23-01-08 07:45

ציטוט:

נכתב במקור על ידי NDVNDV (פרסם 602815)
לפי מה שאני יודע פתיחה של php גוזלת משאבים...
אז השניה...
אני מעדיף בכלל

קוד:

echo <<<html
...
html;

הכי נוח לדעתי

בס"ד

מה זה משנה משאבים? השרת עובד לא אתה:-)

Sagi 23-01-08 12:26

ציטוט:

נכתב במקור על ידי LocalHost (פרסם 602833)
בס"ד

מה זה משנה משאבים? השרת עובד לא אתה:-)

כן ועם זה אתר גדול ? זה יכול להעמיס על השרת ולגרום לו לקרוס למרות שנראה לי שזה לא מעמיס בצורת משמעותית אבל אני מעדיף תשיטה של NDVNDV

reXtea 23-01-08 15:09

לפתוח ולסגור PHP זה לא מומלץ...
הכי טוב זה לעשות פשוט ECHO ולהבריח תווים... או להשתמש בherdoc ולעשות ECHO... בעקרון ECHO עדיף על פרינט - הוא לוקח פחות משאבים.

RS324 23-01-08 15:14

אף אחת מהשיטות האלה לא מומלצת
השיטה הכי מומלצת זה לעבוד עם מערכת טמפלטים (או מוכנה או בנוייה אישית)
ועם מערכת CACHE לחסכון בזמן עיבוד.

Daniel 23-01-08 18:54

השיטה שתתפוס לך הכי פחות משאבים, ונחשבת הכי איכותית - מערכת טמפלייטים, כמו ש-RS324 ציין.

מה שאני מציע לך, זה ללמוד OOP, ובהתחלה, בהתחלת הדף,
$to print="";

ובכל פעם - במקום להדפיס - לעשות $to_print .= "Text";
ולבסוף, לעשות את ה-ECHO.

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

AlmogBaku 23-01-08 20:05

שיטת ההברחה כמובן, יותר מקצועי, יותר מסודר, ופחות משאבים.

RS324 23-01-08 20:31

ציטוט:

נכתב במקור על ידי MasterT (פרסם 602935)
השיטה שתתפוס לך הכי פחות משאבים, ונחשבת הכי איכותית - מערכת טמפלייטים, כמו ש-RS324 ציין.

מה שאני מציע לך, זה ללמוד OOP, ובהתחלה, בהתחלת הדף,
$to print="";

ובכל פעם - במקום להדפיס - לעשות $to_print .= "Text";
ולבסוף, לעשות את ה-ECHO.

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

ציטוט:

נכתב במקור על ידי Baku (פרסם 602942)
שיטת ההברחה כמובן, יותר מקצועי, יותר מסודר, ופחות משאבים.

לא לא ושוב פעם לא.
כל אחת מהשיטות האלה, אתם לא עושים את הפעולה הבסיסית של הפרדת תוכן (HTML) מקוד ככה שאף אחת מהשיטות האלה לא מקצועית ובטח שלא נכונה לעבודה במערכות גדולות.

phpyo 23-01-08 20:37

אני אשתמש ב-smarty וזהו :)

daMn 23-01-08 22:14

אכן עבודה נכונה זאת עבודה עם תבניות, הhtml והphp בנפרד.
קח דוגמאות ממערכות גדולות, תוריד ותראה איך הם עובדים.

AlmogBaku 24-01-08 16:28

ציטוט:

נכתב במקור על ידי RS324 (פרסם 602947)
לא לא ושוב פעם לא.
כל אחת מהשיטות האלה, אתם לא עושים את הפעולה הבסיסית של הפרדת תוכן (HTML) מקוד ככה שאף אחת מהשיטות האלה לא מקצועית ובטח שלא נכונה לעבודה במערכות גדולות.

??????

אני מדבר על
PHP קוד:

echo "<a herf=\"http://www.zofim.org.il\"> hi!!!"</a>"; 

וזה בכלל לא קשור לשימוש במנגנונים...

RS324 24-01-08 17:58

ציטוט:

נכתב במקור על ידי Baku (פרסם 603057)
??????

אני מדבר על
PHP קוד:

echo "<a herf=\"http://www.zofim.org.il\"> hi!!!"</a>"; 

וזה בכלל לא קשור לשימוש במנגנונים...

ואיך בדוגמא שהבאת אתה מפריד את הקוד מהתוכן ?

זה בדיוק מה שאסור לעשות.

Daniel 24-01-08 18:21

RS324, כמובן שבמערכות שלי אני עובד עם קבצי סקין, אבל אתה מצפה שעכשיו הוא יתחיל לעבוד גם עם OOP, גם עם מחלקת טמפלייט, וגם עם קבצי סקין?....

צעד אחד בכל פעם, כמו שבן גוריון אמר

AlmogBaku 24-01-08 18:30

משתנים? פונקציות..

מיליון ואחת דרכים.

RS324 24-01-08 19:05

ציטוט:

נכתב במקור על ידי Baku (פרסם 603116)
משתנים? פונקציות..

מיליון ואחת דרכים.

מה הקשר בפעם השניה ?

לא משנה אם תעטוף את ה ECHO בפונקציה זה עדיין לא נקרא הפרדה של תוכן מקוד...

reXtea 24-01-08 19:36

ציטוט:

נכתב במקור על ידי RS324 (פרסם 603126)
מה הקשר בפעם השניה ?

לא משנה אם תעטוף את ה ECHO בפונקציה זה עדיין לא נקרא הפרדה של תוכן מקוד...

כשאתה אומר הפרדה של התוכן מהקוד, אתה מתכוון קבצי TEMPLATE? או משהו בסגנון?
בכ"מ אני במערכות שלי משתמש בקבצי TEMPLATE שאין להם כל קשר לקוד כמו שאמרת... ולבסוף אחרי שאגרתי את כל הHTML בתוך משתנה מסויים אני מדפיס אותו באמצעות ECHO.

ושיטה שאני מאוד אוהב לעשות זה לעשות כמה פונקציות שאחראיות על החלפה של תוכן... אני עושה משהו כמו
PHP קוד:

$mc->display->add_replace("FIND""REPLACE"); 

ואז בסוף לפני שאני עושה הדפסה זה מחליף את כל מה שאגרתי... זה ממש שיטה נוחה במידה ואני רוצה להחליף מספר דברים...

AlmogBaku 24-01-08 19:44

זה סתם בולשיט, "ההפרדה מהקוד" לא באמת משנה.

reXtea 24-01-08 19:49

ציטוט:

נכתב במקור על ידי Baku (פרסם 603135)
זה סתם בולשיט, "ההפרדה מהקוד" לא באמת משנה.

האמת שאתה טועה, זה כמו שתגיד שOOP לא עוזר לסידור ולהבנת הקוד בצורה הרבבה יותר טובה... אז בדיוק אותו דבר הפרדה מהקוד הרבה יותר טובה... במקום לסרבל את הקוד שבחלק מהמצבים הוא גם ככה מסובך בשורות HTML עדיף לך להשים את זה בקובץ נפרד ולדאוג לאיזה מחלקה טובה שיהיה לך קל לנהל איתה את הHTML בצורה יעילה.

AlmogBaku 25-01-08 13:48

אתה מדבר על עיצוב? כלומר קבצי skin למשל???

אם כן- זה בכלל לא קשור לקוד עצמו, זו רק מתודיקת עבודה..
אני אישית עובד עם קבצי סקיןף אבל שוב- זו שיטת עבודה, ולא הדרך.


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

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