שלום.
עברתי קצת על הקוד של מערכת 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
ואיך זה שכל פעם היא מקבלת מספר שונה של ערכים והיא יודעת "למיין" אותם, כל ערך לאיזה משתנה יילך? (האומנם?)
תודה.