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

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

Kfir.G 09-12-07 09:05

[PHP] שאלה לגבי array_walk
 
שלום,
דבר ראשון שרציתי לשאול זה בשביל מה בכלל קיימת הפונקציה array_walk? שכן היא בסה"כ עושה משהו בסגנון של foreach עם קריאה לפונקציה... (אחרי בדיקה שעשיתי הforeach יותר יעיל במקרה של הדפסת מערך)
בנוסף רציתי לשאול מה ההבדל בין array_walk ו array_walk_recursive?

תודה מראש :)

Meir 09-12-07 09:28

את רב הפונקציות אתה יכול לממש בקוד PHP לדוגמא strlen:

PHP קוד:

function my_strlen($string)
{
    for (
$i 0$string[$i]; $i++);
    return 
$i;


או strpos:

PHP קוד:

function my_strpos($string$to_find)
{
    for (
$i 0$string[$i] != $to_find$i++);
    return 
$i;


אבל הפונקציות המובנות שבPHP כתובות בשפת C ככה שקשה לי להאמין שבבדיקה רצינית הפונקציה שאתה תממש תהיה יותר טובה מהפונקציה שלהם.

array_walk_recursive - תעבור גם על מערך שהוא בתוך מערך:

PHP קוד:

<?php

function print_value($value) {
    echo 
$value;
}

$array = array('a', array('b''c'), 'd''e');

array_walk_recursive($array'print_value');

// print a, b, c, d, e

?>

לעומת array_walk:

PHP קוד:

<?php

function print_value($value) {
    echo 
$value;
}

$array = array('a', array('b''c'), 'd''e');

array_walk($array'print_value');

// print a, Array, d, e

?>


Kfir.G 09-12-07 12:05

אוקי, תודה מאיר :)
אפשר לנעול


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

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