|
|
|
|
# 1 |
|
חבר וותיק
|
פונקציה לא מובנת לי
שלום.
עברתי קצת על הקוד של מערכת IPB והגעתי לפונקציה כזאת: קוד:
function my_setcookie( $name, $value="", $sticky=1, $expires_x_days=0 )
{
//-----------------------------------------
// Check
//-----------------------------------------
if ( $this->no_print_header )
{
return;
}
//-----------------------------------------
// Set vars
//-----------------------------------------
if ( $sticky == 1 )
{
$expires = time() + ( 60*60*24*365 );
}
else if ( $expires_x_days )
{
$expires = time() + ( $expires_x_days * 86400 );
}
else
{
$expires = FALSE;
}
...
קוד:
$this->my_setcookie( 'ipb_stronghold', '-1' );
$this->my_setcookie('forum_read', $fread);
$this->my_setcookie( 'ipb_stronghold', $stronghold, 1 );
1 - עם כמה משתנים צריך לקרוא לפונקציה?? (בכל אחת הדוגמאות יש מספר שונה של משתנים, פעם אחת 2, פעם שניה 2, פעם שלישית 3 ... 2 - איך העוגיות מקבלות ערך שהוא לא "" אם כתוב: $name, $value="", $sticky=1, $expires_x_days=0 3 - מדוע יש if ( $sticky == 1 ) אם נאמר: $name, $value="", $sticky=1, $expires_x_days=0 ? השאלה הכללית שלי היא איך הפונקציה מקבלת ערכים שונים ממה שמוגדרים לה כאן: function my_setcookie( $name, $value="", $sticky=1, $expires_x_days=0 ואיך זה שכל פעם היא מקבלת מספר שונה של ערכים והיא יודעת "למיין" אותם, כל ערך לאיזה משתנה יילך? (האומנם?) תודה. |
|
|
|
# 2 |
|
משתמש - היכל התהילה
|
אם אתה לא מספק פרטמטרים אז נכנסים ערכי הברירת מחדל, שבמקרה הזה:
$value="" $sticky=1 $expires_x_days=0 לכן מספיק לקרוא לפונקציה רק עם פרמטר אחד ($name). ואם אתה לא רוצה להשתמש בערכי ברירת המחדל אתה יכול לשכתב אותם למה שבא לך. הכנסת פרמטרים היא משמאל לימין, אז אם תרצה לשנות את $sticky תצטרך לתת גם ערך ל $value. |
|
|
|
# 3 |
|
חבר וותיק
|
הבנתי, אז אתה אומר שה- "-1" זה בעצם ה- VALUE?
אם הייתי כותב ככה: קוד:
$this->my_setcookie('imri', '', '', 5)
שאלה נוספת, כאן: קוד:
//----------------------------------------- // Time options //----------------------------------------- $this->time_options = array( 'JOINED' => $this->vars['clock_joined'], 'SHORT' => $this->vars['clock_short'], 'LONG' => $this->vars['clock_long'], 'TINY' => isset($this->vars['clock_tiny']) ? $this->vars['clock_tiny'] : 'j M Y - G:i', 'DATE' => isset($this->vars['clock_date']) ? $this->vars['clock_date'] : 'j M Y', ); |
|
|
|
# 4 | |
|
חבר וותיק
|
ציטוט:
|
|
|
|
|
# 5 |
|
חבר בקהילה
|
זה הצבת תנאי,
הסימן שאלה זה אם, והנקודותיים זה אז .. במקום לעשות IF, אז הם עושים את התנאי בקביעת האובייקט
__________________
|
|
![]() |
| חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|