עזרה ב PHP, איך לגרום ל {string} ללא תגי PHP להחזיר את הערך ? - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

עזרה ב PHP, איך לגרום ל {string} ללא תגי PHP להחזיר את הערך ?


Kirma

Recommended Posts

שלום

אני יסביר בדוגמאות על מנת שתבינו יותר טוב

lang.php


$lang['title'] = "Welcomt to the site";
$lang['content'] = "some text comes here";

index.php


<html>
<head>
<title>{title}</title>
</head>
<body>
{content}
</body>
</html>

בעיקרון אני רוצה לעשות שתי שפות באתר שלי אבל אני מחפש לעשות משהו יעיל ולא לרשום בכל מקום

<? echo $contect; ?>

הבנתי שאפשר לעשות את זה עם preg_replace

ניסיתי לעשות את זה עם הקוד הזה אבל זה לא פירש לי את זה

preg_replace("{'$value'}", "".$LANG['$value']."", "index.php"); 

קישור לתוכן
שתף באתרים אחרים

קרא שוב על preg_replace

http://php.net/manual/en/function.preg-replace.php

(מעבר לעובדה שאני לא מבין על מה בכלל ניסית להפעיל אותו.. על קובץ?)

כן, על הקובץ . שהוא בעצם יבצע את הפעולה על קובץ האינדקס, זה לא קוד שלי

זה אפשרי בכלל לעשות את זה ?

קישור לתוכן
שתף באתרים אחרים

זה לא עניין של אפשרי או לא, זאת לא הצורה שבה השפה בכלל עובדת.

האם יש לך הכרות בסיסית עם PHP או שזה לחלוטין הצעד הראשון שלך?

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

קישור לתוכן
שתף באתרים אחרים

זה לא הכרות ראשונה...

אבל עם הפונקצייה הזאת לא חושב שהשתמשתי אי פעם

עריכה:

הצלחתי :)

<?php
$lang['title'] = "Welcomt to the site";
$lang['content'] = "some text comes here";

$editfile = file_get_contents("findex.php");
$output = preg_replace('/\{(\w+)\}/e',"\$lang['\\1']",$editfile);
echo $output;
?>

הייתי צריך את הפונקציה שתגדיר לי במשתנה את התוכן של הקובץ -> file_get_contents

קישור לתוכן
שתף באתרים אחרים

אממ, כן עדיף..

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

אז אם כל מקום תדחוף את הטגי PHP זה קצת (הרבה) מציק ומבלבל..

אבל אם יש לך אתר שמכיל כמה טקסטים בסיסיים, זה הרבה יותר עדיף (בשיטה ה"לא יעילה" השתמשתי עד היום, אבל באתר הנוכחי זה נהיה כבר בעיה !)

קישור לתוכן
שתף באתרים אחרים

זה ממש לא בעיה, אני יכול להציג לך מספר לא מבוטל של מערכות נחשבות שעושות שימוש ב "שיטה הלא יעילה". :)

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

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

קישור לתוכן
שתף באתרים אחרים

ישראלים ישראלים ישראלים.. ושוב ישראלים.

דיי להמציא את הגלגל מחדש ומחדש..

אתה מנסה לעשות מנוע תבנית (MVC), אז למה להתחיל להתחרבש עם קוד של מתחילים ולא יעיל והמון באגים.

אני משתמש ב-Smarty, ומאוד נהנה מה-API המגניב שלו בנושא התיבנות. אתה פשוט מחלק את הקוד שלך, שככה בכל הנושא ה-theme אין שם אפילו תו PHP אחד..

ובנושא השפות, למה לא להשתמש ב-gettext ולעבוד בדרך הנכונה?

וסתם טיפ:

לא משתמשים במרכאות כפולות (") בסטרינג שאיו בו משתנים.. אלא רק במכראה יחידה (').

קישור לתוכן
שתף באתרים אחרים

אף אחד לא אמר שהצאתי את הגלגל..

ואף אחד לא באמת יכול להגיד לי מה לעשות

אתם יכולים לייעץ לי .. (כמובן שאתם לא חייבים)

ולא ממש הבנתי מה "gettext" עושה

איך בעצם אני בונה את הטבלה של השפה ?

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...