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

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

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 17-12-13, 21:14   # 1
Penetration
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Sep 2007
הודעות: 98

Penetration לא מחובר  

PHP | משהו מתפקשש עם preg_replace (עזרה)

PHP קוד:
$text "replace -> {var} <- was var...";
$temp["var"] = "!!!this is var!!!";
echo 
preg_replace('/\{(.*)\}/'"$temp[$1]"$text); 
הרעיון הוא להחליף בטקסט מסוים את {var} באיבר שהאינדקס שלו הוא var במערך מסוים...
בארגומנט replace של preg_replace ניסיתי גם לשים את האופציות הבאות:
PHP קוד:
$temp[$1]
$temp["$1"]
"$temp[\1]" 
ועוד...

תודה לעוזרים
  Reply With Quote
ישן 18-12-13, 00:03   # 2
MAORBARI
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Sep 2008
הודעות: 484

MAORBARI לא מחובר  

PHP קוד:
echo preg_replace('/\{(\w*?)\}/i'$temp['$1'], $text); 
  Reply With Quote
ישן 18-12-13, 00:18   # 3
אדיר
עסק רשום [?]
 
מיני פרופיל
תאריך הצטרפות: Mar 2008
מיקום: אשקלון
הודעות: 1,714

אדיר לא מחובר  

http://krasimirtsonev.com/blog/artic...n-just-20-line
  Reply With Quote
ישן 18-12-13, 02:47   # 4
MAORBARI
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Sep 2008
הודעות: 484

MAORBARI לא מחובר  

טעיתי.. תיקון קוד:
PHP קוד:
preg_replace('/\{(.*?)\}/ei''print str_replace(\'{$1}\', $temp[\'$1\'], $text);'$text); 
יש גם את האפשרות הזו:
PHP קוד:
echo preg_replace_callback('/\{(.*?)\}/i', function($varMatches) {
    return 
$GLOBALS['temp'][$varMatches[1]];
}, 
$text); 

Last edited by MAORBARI; 18-12-13 at 03:04..
  Reply With Quote
ישן 18-12-13, 10:41   # 5
Penetration
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Sep 2007
הודעות: 98

Penetration לא מחובר  

ציטוט:
נכתב במקור על ידי MAORBARI צפה בהודעה
טעיתי.. תיקון קוד:
PHP קוד:
preg_replace('/\{(.*?)\}/ei''print str_replace(\'{$1}\', $temp[\'$1\'], $text);'$text); 
יש גם את האפשרות הזו:
PHP קוד:
echo preg_replace_callback('/\{(.*?)\}/i', function($varMatches) {
    return 
$GLOBALS['temp'][$varMatches[1]];
}, 
$text); 
האמת שלאפוציה הראשונה כבר הגעתי, כמובן שעובדת מצוין אבל בעייתית מאוד כי מעורב בה eval...
מנסה להימנע מזה...
לגבי האופציה השניה - לא רצה...
  Reply With Quote
ישן 18-12-13, 14:46   # 6
Haimz
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Sep 2010
הודעות: 1,221

Haimz לא מחובר  

PHP קוד:
<?php
    $text 
"My name is: {name} and i love play {game} and i work at {company_name}";
    
$data['name'] = "Haim";
    
$data['game'] = "Basketball";
    
$data['company_name'] = "Haimz.net";

    
$text preg_replace_callback("/\{([a-zA-Z0-9_]+?)\}/""replaceVars"$text);

    function 
replaceVars($match)
    {
        global 
$data;
        return 
$data[$match[1]];
    }

    echo 
$text;
?>
  Reply With Quote
ישן 19-12-13, 00:11   # 7
Penetration
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Sep 2007
הודעות: 98

Penetration לא מחובר  

ציטוט:
נכתב במקור על ידי Haimz צפה בהודעה
PHP קוד:
<?php
    $text 
"My name is: {name} and i love play {game} and i work at {company_name}";
    
$data['name'] = "Haim";
    
$data['game'] = "Basketball";
    
$data['company_name'] = "Haimz.net";

    
$text preg_replace_callback("/\{([a-zA-Z0-9_]+?)\}/""replaceVars"$text);

    function 
replaceVars($match)
    {
        global 
$data;
        return 
$data[$match[1]];
    }

    echo 
$text;
?>
מצוין עובד תודה
  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. הזמן כעת הוא 17:52.

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