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

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

RS324 13-05-06 15:24

טיפים בנושא IF
 
מידי פעם אני אכתוב פה כמה טיפים בנושאים שונים שיכולים לעזור למשתמשים שונים.

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

היום אני אראה לכם דרך שאולי רובכם לא ידעתם שהיא קיימת בכלל והיא יכולה לחסוך לכם הרבה שורות קוד מיותרות

ראשית נתחיל בפונקציה :

PHP קוד:

function iif($expression$returntrue$returnfalse '')
{
   return (
$expression $returntrue $returnfalse);


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

עכשיו לדוגמא עם קוד

במקום לכתוב קוד כזה


PHP קוד:

if (!empty($_REQUEST['mycolor']))
{
    
$mycolor $_REQUEST['mycolor'];
}
else 
{
    
$mycolor 'Red';



אתם מקצרים את כל התהליך וכותבים את זה ככה - בשורה אחת

PHP קוד:

$mycolor iif($_REQUEST['mycolor'],$_REQUEST['mycolor'],'Red'); 


מקווה שזה עוזר למישהו איכשהו

תהנו...

Guz.co.il 13-05-06 15:43

יפה... תודה!

eXtaZa 13-05-06 15:46

יפה! כל הכבוד!

-VladK- 13-05-06 18:25

נחמד...לא ידעתי על זה!

BlueNosE 13-05-06 18:31

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

אבל בכל מקרה נחמד =]

RS324 13-05-06 18:38

ציטוט:

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

אבל בכל מקרה נחמד =]

זה כי שכחתי לכתוב EMPTY גם בשני

מבחינת מהירות עבודה זה בדיוק אותו הדבר, זה SYNTEX שהוא מובנה ב PHP
ולא איזה פונקציה שאני המצאתי.... שמתי את זה בפונקציה רק בשביל הנוחות....

מבחינת יעילות זה הרבה יותר נוח גם יש לך אפשרות לעשות דברים אחרים ש IF רגיל לא מאפשר כמו לדוגמא שירשור בתצוגת פלט לדוגמא :

PHP קוד:

echo "mycolor is :".iif($_REQUSET['mycolor'],$_REQUEST['mycolor'],'red')." And i like it"

דבר ש IF רגיל לא מאפשר לך לעשות...

Tomer 13-05-06 18:50

ציטוט:

נכתב במקור על ידי RS324
זה כי שכחתי לכתוב EMPTY גם בשני

מבחינת מהירות עבודה זה בדיוק אותו הדבר, זה SYNTEX שהוא מובנה ב PHP
ולא איזה פונקציה שאני המצאתי.... שמתי את זה בפונקציה רק בשביל הנוחות....

מבחינת יעילות זה הרבה יותר נוח גם יש לך אפשרות לעשות דברים אחרים ש IF רגיל לא מאפשר כמו לדוגמא שירשור בתצוגת פלט לדוגמא :

PHP קוד:

echo "mycolor is :".iif($_REQUSET['mycolor'],$_REQUEST['mycolor'],'red')." And i like it"

דבר ש IF רגיל לא מאפשר לך לעשות...

מזכיר לי תכנות סקריפטינג במירק - $iif |קורץ|

Morishani 13-05-06 19:32

מה הבעיה בדיוק לרשום ככה ?
 
PHP קוד:

(a=="a value isn't 1" "a value isn't 1"


null 13-05-06 19:50

הרעיון לקוח מהמירק? :)

DaNieLLL 14-05-06 14:11

כל הכבוד על ההשקעה.

HyDr0g3n 14-05-06 14:42

ציטוט:

נכתב במקור על ידי RS324
זה כי שכחתי לכתוב EMPTY גם בשני

מבחינת מהירות עבודה זה בדיוק אותו הדבר, זה SYNTEX שהוא מובנה ב PHP
ולא איזה פונקציה שאני המצאתי.... שמתי את זה בפונקציה רק בשביל הנוחות....

מבחינת יעילות זה הרבה יותר נוח גם יש לך אפשרות לעשות דברים אחרים ש IF רגיל לא מאפשר כמו לדוגמא שירשור בתצוגת פלט לדוגמא :

PHP קוד:

echo "mycolor is :".iif($_REQUSET['mycolor'],$_REQUEST['mycolor'],'red')." And i like it"

דבר ש IF רגיל לא מאפשר לך לעשות...


תיכנות בפונקציות איטי יותר מאשר בלי פונקציות.!

nevo 14-05-06 14:48

זה כבר קיים אז למה ליצור כזה :S

BlueNosE 14-05-06 17:06

דוגרי כשחושבים על זה, זה כמו לכתוב
PHP קוד:

echo "mycolor is :".($_REQUSET['mycolor']?$_REQUEST['mycolor']:'red')." And i like it"


RS324 14-05-06 18:23

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

BlueNosE 14-05-06 18:57

ברור, אבל אני גם מדבר על נוחות, אז אותו דבר ואפילו קצת פחות שורות קוד מה שאני כתבתי


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

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