Question about 'sizeof'

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • SM

    Question about 'sizeof'

    Hello,
    I have another simple question about an array in PHP and a variable in
    PHP.

    This is the array:

    $thumbs_cat_1 = array(
    'wine',
    'cheese',
    'ice',
    'bread'
    );


    $thumbs_cat_2 = array(
    'hello',
    'goodbye'
    );


    This will work:
    $item_total = sizeof($thumbs_ cat_1);
    output: 4

    $item_total = sizeof($thumbs_ cat_2);
    output: 2


    Now, i want to replace the parameter in 'sizeof' by a variable

    $thumb = 1;
    $item = '$thumbs_cat_' . $thumb; //this outputs a string:
    $thumbs_cat_1

    $item_total = sizeof($item);
    output: Nothing!

    How do i pass a variable to the 'sizeof' function?

    Thanks
    Marco

  • Piotr

    #2
    Re: Question about 'sizeof'

    SM wrote:
    Hello,
    I have another simple question about an array in PHP and a variable in
    PHP.
    >
    This is the array:
    >
    $thumbs_cat_1 = array(
    'wine',
    'cheese',
    'ice',
    'bread'
    );
    >
    >
    $thumbs_cat_2 = array(
    'hello',
    'goodbye'
    );
    >
    >
    This will work:
    $item_total = sizeof($thumbs_ cat_1);
    output: 4
    >
    $item_total = sizeof($thumbs_ cat_2);
    output: 2
    >
    >
    Now, i want to replace the parameter in 'sizeof' by a variable
    >
    $thumb = 1;
    $item = '$thumbs_cat_' . $thumb; //this outputs a string:
    $thumbs_cat_1
    >
    $item_total = sizeof($item);
    output: Nothing!
    >
    How do i pass a variable to the 'sizeof' function?
    You should use variable variable:
    $item_total = sizeof($$item);

    Mark double $$
    This is true in any situation, not only with sizeof

    best regards
    Piotr N

    Comment

    • ELINTPimp

      #3
      Re: Question about 'sizeof'

      On May 8, 11:15 am, SM <servandomont.. .@gmail.comwrot e:
      Hello,
      I have another simple question about an array in PHP and a variable in
      PHP.
      >
      This is the array:
      >
      $thumbs_cat_1 = array(
      'wine',
      'cheese',
      'ice',
      'bread'
      );
      >
      $thumbs_cat_2 = array(
      'hello',
      'goodbye'
      );
      >
      This will work:
      $item_total = sizeof($thumbs_ cat_1);
      output: 4
      >
      $item_total = sizeof($thumbs_ cat_2);
      output: 2
      >
      Now, i want to replace the parameter in 'sizeof' by a variable
      >
      $thumb = 1;
      $item = '$thumbs_cat_' . $thumb; //this outputs a string:
      $thumbs_cat_1
      >
      $item_total = sizeof($item);
      output: Nothing!
      >
      How do i pass a variable to the 'sizeof' function?
      >
      Thanks
      Marco
      Marco,

      You should be getting a return of 1 (integer) for a string passed to
      the count() function. (sizeof is an alias of count)

      To get the length of a string, you would traditionally use
      strlen($item), which would return the length of a string.

      Regards,

      Steve

      Comment

      • ELINTPimp

        #4
        Re: Question about 'sizeof'

        On May 8, 11:36 am, ELINTPimp <smsi...@gmail. comwrote:
        On May 8, 11:15 am, SM <servandomont.. .@gmail.comwrot e:
        >
        >
        >
        Hello,
        I have another simple question about an array in PHP and a variable in
        PHP.
        >
        This is the array:
        >
        $thumbs_cat_1 = array(
        'wine',
        'cheese',
        'ice',
        'bread'
        );
        >
        $thumbs_cat_2 = array(
        'hello',
        'goodbye'
        );
        >
        This will work:
        $item_total = sizeof($thumbs_ cat_1);
        output: 4
        >
        $item_total = sizeof($thumbs_ cat_2);
        output: 2
        >
        Now, i want to replace the parameter in 'sizeof' by a variable
        >
        $thumb = 1;
        $item = '$thumbs_cat_' . $thumb; //this outputs a string:
        $thumbs_cat_1
        >
        $item_total = sizeof($item);
        output: Nothing!
        >
        How do i pass a variable to the 'sizeof' function?
        >
        Thanks
        Marco
        >
        Marco,
        >
        You should be getting a return of 1 (integer) for a string passed to
        the count() function. (sizeof is an alias of count)
        >
        To get the length of a string, you would traditionally use
        strlen($item), which would return the length of a string.
        >
        Regards,
        >
        Steve
        Ahhh, now i understand after reading Pitor's reply. Yes, he is
        correct, I read the question differently.

        Steve

        Comment

        • Piotr

          #5
          Re: Question about 'sizeof'

          >$thumb = 1;
          >$item = '$thumbs_cat_' . $thumb; //this outputs a string:
          >$thumbs_cat_ 1
          >>
          >$item_total = sizeof($item);
          >output: Nothing!
          >>
          >How do i pass a variable to the 'sizeof' function?
          >
          You should use variable variable:
          $item_total = sizeof($$item);
          >
          Mark double $$
          This is true in any situation, not only with sizeof
          Forgot about one small detail:
          $item = 'thumbs_cat_' . $thumb; //this outputs a string:
          ---------^ loose the '$';

          best regards
          Piotr N

          Comment

          • SM

            #6
            Re: Question about 'sizeof'

            On May 8, 11:36 am, ELINTPimp <smsi...@gmail. comwrote:
            On May 8, 11:15 am, SM <servandomont.. .@gmail.comwrot e:
            >
            >
            >
            Hello,
            I have another simple question about an array in PHP and a variable in
            PHP.
            >
            This is the array:
            >
            $thumbs_cat_1 = array(
            'wine',
            'cheese',
            'ice',
            'bread'
            );
            >
            $thumbs_cat_2 = array(
            'hello',
            'goodbye'
            );
            >
            This will work:
            $item_total = sizeof($thumbs_ cat_1);
            output: 4
            >
            $item_total = sizeof($thumbs_ cat_2);
            output: 2
            >
            Now, i want to replace the parameter in 'sizeof' by a variable
            >
            $thumb = 1;
            $item = '$thumbs_cat_' . $thumb; //this outputs a string:
            $thumbs_cat_1
            >
            $item_total = sizeof($item);
            output: Nothing!
            >
            How do i pass a variable to the 'sizeof' function?
            >
            Thanks
            Marco
            >
            Marco,
            >
            You should be getting a return of 1 (integer) for a string passed to
            the count() function. (sizeof is an alias of count)
            >
            To get the length of a string, you would traditionally use
            strlen($item), which would return the length of a string.
            >
            Regards,
            >
            Steve
            I don't need the length of the string , just the actual variable. But
            i did like the fact that sizeof is an alias of count. So i will use
            count instead.
            I didn't know about the $$ tip. Wow! so easy. Thanks, It Works!

            Heres the final code:

            $thumb = 1;
            $item = '$thumbs_cat_' . $thumb;
            $item_total = count($item);

            Thanks again
            Marco

            Comment

            • SM

              #7
              Re: Question about 'sizeof'

              On May 8, 11:42 am, Piotr <s...@poczta.on et.plwrote:
              $thumb = 1;
              $item = '$thumbs_cat_' . $thumb; //this outputs a string:
              $thumbs_cat_1
              >
              $item_total = sizeof($item);
              output: Nothing!
              >
              How do i pass a variable to the 'sizeof' function?
              >
              You should use variable variable:
              $item_total = sizeof($$item);
              >
              Mark double $$
              This is true in any situation, not only with sizeof
              >
              Forgot about one small detail:
              $item = 'thumbs_cat_' . $thumb; //this outputs a string:
              ---------^ loose the '$';
              >
              best regards
              Piotr N
              I don't need the length of the string , just the actual variable. But
              i did like the fact that sizeof is an alias of count. So i will use
              count instead.
              I didn't know about the $$ tip. Wow! so easy. Thanks, It Works!

              Heres the final code:

              $thumb = 1;
              $item = 'thumbs_cat_' . $thumb;
              $item_total = count($item);

              Thanks again
              Marco

              Comment

              • SM

                #8
                Re: Question about 'sizeof'

                On May 8, 11:42 am, Piotr <s...@poczta.on et.plwrote:
                $thumb = 1;
                $item = '$thumbs_cat_' . $thumb; //this outputs a string:
                $thumbs_cat_1
                >
                $item_total = sizeof($item);
                output: Nothing!
                >
                How do i pass a variable to the 'sizeof' function?
                >
                You should use variable variable:
                $item_total = sizeof($$item);
                >
                Mark double $$
                This is true in any situation, not only with sizeof
                >
                Forgot about one small detail:
                $item = 'thumbs_cat_' . $thumb; //this outputs a string:
                ---------^ loose the '$';
                >
                best regards
                Piotr N
                I don't need the length of the string , just the actual variable. But
                i did like the fact that sizeof is an alias of count. So i will use
                count instead.
                I didn't know about the $$ tip. Wow! so easy. Thanks, It Works!

                Heres the final code:

                $thumb = 1;
                $item = 'thumbs_cat_' . $thumb;
                $item_total = count($$item);

                Thanks again
                Marco

                Comment

                • SM

                  #9
                  Re: Question about 'sizeof'

                  On May 8, 11:50 am, SM <servandomont.. .@gmail.comwrot e:
                  On May 8, 11:42 am, Piotr <s...@poczta.on et.plwrote:
                  >
                  >
                  >
                  >$thumb = 1;
                  >$item = '$thumbs_cat_' . $thumb; //this outputs a string:
                  >$thumbs_cat_ 1
                  >
                  >$item_total = sizeof($item);
                  >output: Nothing!
                  >
                  >How do i pass a variable to the 'sizeof' function?
                  >
                  You should use variable variable:
                  $item_total = sizeof($$item);
                  >
                  Mark double $$
                  This is true in any situation, not only with sizeof
                  >
                  Forgot about one small detail:
                  $item = 'thumbs_cat_' . $thumb; //this outputs a string:
                  ---------^ loose the '$';
                  >
                  best regards
                  Piotr N
                  >
                  I don't need the length of the string , just the actual variable. But
                  i did like the fact that sizeof is an alias of count. So i will use
                  count instead.
                  I didn't know about the $$ tip. Wow! so easy. Thanks, It Works!
                  >
                  Heres the final code:
                  >
                  $thumb = 1;
                  $item = 'thumbs_cat_' . $thumb;
                  $item_total = count($$item);
                  >
                  Thanks again
                  Marco
                  Maybe i should open a new post for this one, but here it goes:

                  I'm stock! When i want to reference that variable in a echo statment,
                  it does't work. Any suggestions?
                  Thanks

                  <li><a href="<?php echo $SERVER['PHP_SELF']; ?>?cat=<?php echo
                  $category_this; ?>"><img src="images/<?php echo($$item[$i]);?>"
                  alt="" /></a></li>

                  Comment

                  • Piotr

                    #10
                    Re: Question about 'sizeof'

                    SM wrote:
                    On May 8, 11:50 am, SM <servandomont.. .@gmail.comwrot e:
                    >On May 8, 11:42 am, Piotr <s...@poczta.on et.plwrote:
                    >>
                    >>
                    >>
                    >>>>$thumb = 1;
                    >>>>$item = '$thumbs_cat_' . $thumb; //this outputs a string:
                    >>>>$thumbs_cat _1
                    >>>>$item_tot al = sizeof($item);
                    >>>>output: Nothing!
                    >>>>How do i pass a variable to the 'sizeof' function?
                    >>>You should use variable variable:
                    >>>$item_tota l = sizeof($$item);
                    >>>Mark double $$
                    >>>This is true in any situation, not only with sizeof
                    >>Forgot about one small detail:
                    >>$item = 'thumbs_cat_' . $thumb; //this outputs a string:
                    >>---------^ loose the '$';
                    >>best regards
                    >>Piotr N
                    >I don't need the length of the string , just the actual variable. But
                    >i did like the fact that sizeof is an alias of count. So i will use
                    >count instead.
                    >I didn't know about the $$ tip. Wow! so easy. Thanks, It Works!
                    >>
                    >Heres the final code:
                    >>
                    >$thumb = 1;
                    >$item = 'thumbs_cat_' . $thumb;
                    >$item_total = count($$item);
                    >>
                    >Thanks again
                    >Marco
                    >
                    Maybe i should open a new post for this one, but here it goes:
                    >
                    I'm stock! When i want to reference that variable in a echo statment,
                    it does't work. Any suggestions?
                    Thanks
                    >
                    <li><a href="<?php echo $SERVER['PHP_SELF']; ?>?cat=<?php echo
                    $category_this; ?>"><img src="images/<?php echo($$item[$i]);?>"
                    alt="" /></a></li>
                    :)
                    It should look like this. Mark the { and }
                    echo ${$item[$i]};

                    As a side note, is this really best way to access needed data this way ?
                    Cant you keep original values in the array instead of the variable names ?

                    best regards
                    Piotr N

                    Comment

                    • SM

                      #11
                      Re: Question about 'sizeof'

                      On May 8, 12:31 pm, Piotr <s...@poczta.on et.plwrote:
                      SM wrote:
                      On May 8, 11:50 am, SM <servandomont.. .@gmail.comwrot e:
                      On May 8, 11:42 am, Piotr <s...@poczta.on et.plwrote:
                      >
                      >>>$thumb = 1;
                      >>>$item = '$thumbs_cat_' . $thumb; //this outputs a string:
                      >>>$thumbs_cat_ 1
                      >>>$item_tota l = sizeof($item);
                      >>>output: Nothing!
                      >>>How do i pass a variable to the 'sizeof' function?
                      >>You should use variable variable:
                      >>$item_total = sizeof($$item);
                      >>Mark double $$
                      >>This is true in any situation, not only with sizeof
                      >Forgot about one small detail:
                      >$item = 'thumbs_cat_' . $thumb; //this outputs a string:
                      >---------^ loose the '$';
                      >best regards
                      >Piotr N
                      I don't need the length of the string , just the actual variable. But
                      i did like the fact that sizeof is an alias of count. So i will use
                      count instead.
                      I didn't know about the $$ tip. Wow! so easy. Thanks, It Works!
                      >
                      Heres the final code:
                      >
                      $thumb = 1;
                      $item = 'thumbs_cat_' . $thumb;
                      $item_total = count($$item);
                      >
                      Thanks again
                      Marco
                      >
                      Maybe i should open a new post for this one, but here it goes:
                      >
                      I'm stock! When i want to reference that variable in a echo statment,
                      it does't work. Any suggestions?
                      Thanks
                      >
                      <li><a href="<?php echo $SERVER['PHP_SELF']; ?>?cat=<?php echo
                      $category_this; ?>"><img src="images/<?php echo($$item[$i]);?>"
                      alt="" /></a></li>
                      >
                      :)
                      It should look like this. Mark the { and }
                      echo ${$item[$i]};
                      >
                      As a side note, is this really best way to access needed data this way ?
                      Cant you keep original values in the array instead of the variable names ?
                      >
                      best regards
                      Piotr N
                      I've tried it, It doesn't work. When i look at the source code, i see
                      empty an empty string:
                      <img src="images/" alt="" />

                      Here's what im trying to do:
                      -From a list, the user selects the type of discography (either
                      original, compilation, tributes, other)
                      -Each type of discography is associated with an array that contains
                      the name of the cd cover.
                      -Then i show a thumbnail (using a loop) of all the cd covers depending
                      on the array.

                      my arrays look like this
                      $thumbs_cat_1 = array('moonligh t.jpg'', shadow.jpg', 'luna');
                      $thumbs_cat_2 = array(...);
                      $thumbs_cat_3 = array(...);
                      $thumbs_cat_4 = array(...);

                      the thumbs look like this:
                      for($i=0; ...){
                      ....<img src="images/discography/thumbs/<?php echo $thumbs_cat_1[$i]; ?
                      >" alt="" />
                      }

                      All of this , works for the first array.
                      That's why i have a variable that contains the selection from the
                      user:
                      $thumb = $_GET['cat'];
                      $item = 'thumbs_cat_' . $thumb;
                      $item_total = count($$item);
                      .... and so on

                      That's why i need to create images according to the user selection

                      Any ideas what's wrong with the code?
                      Thanks
                      Marco

                      Comment

                      • SM

                        #12
                        Re: Question about 'sizeof'

                        On May 8, 12:31 pm, Piotr <s...@poczta.on et.plwrote:
                        SM wrote:
                        On May 8, 11:50 am, SM <servandomont.. .@gmail.comwrot e:
                        On May 8, 11:42 am, Piotr <s...@poczta.on et.plwrote:
                        >
                        >>>$thumb = 1;
                        >>>$item = '$thumbs_cat_' . $thumb; //this outputs a string:
                        >>>$thumbs_cat_ 1
                        >>>$item_tota l = sizeof($item);
                        >>>output: Nothing!
                        >>>How do i pass a variable to the 'sizeof' function?
                        >>You should use variable variable:
                        >>$item_total = sizeof($$item);
                        >>Mark double $$
                        >>This is true in any situation, not only with sizeof
                        >Forgot about one small detail:
                        >$item = 'thumbs_cat_' . $thumb; //this outputs a string:
                        >---------^ loose the '$';
                        >best regards
                        >Piotr N
                        I don't need the length of the string , just the actual variable. But
                        i did like the fact that sizeof is an alias of count. So i will use
                        count instead.
                        I didn't know about the $$ tip. Wow! so easy. Thanks, It Works!
                        >
                        Heres the final code:
                        >
                        $thumb = 1;
                        $item = 'thumbs_cat_' . $thumb;
                        $item_total = count($$item);
                        >
                        Thanks again
                        Marco
                        >
                        Maybe i should open a new post for this one, but here it goes:
                        >
                        I'm stock! When i want to reference that variable in a echo statment,
                        it does't work. Any suggestions?
                        Thanks
                        >
                        <li><a href="<?php echo $SERVER['PHP_SELF']; ?>?cat=<?php echo
                        $category_this; ?>"><img src="images/<?php echo($$item[$i]);?>"
                        alt="" /></a></li>
                        >
                        :)
                        It should look like this. Mark the { and }
                        echo ${$item[$i]};
                        >
                        As a side note, is this really best way to access needed data this way ?
                        Cant you keep original values in the array instead of the variable names ?
                        >
                        best regards
                        Piotr N
                        I've tried it, It doesn't work. When i look at the source code, i see
                        empty an empty string:
                        <img src="images/" alt="" />

                        Here's what im trying to do:
                        -From a list, the user selects the category of discography (either
                        original, compilation, tributes, other)
                        -Each type of discography is associated with an array that contains
                        the name of the cd covers.
                        -Then i show a thumbnail (using a loop) of all the cd covers.

                        my arrays look like this (one for each category of discography)
                        $thumbs_cat_1 = array('moonligh t.jpg'', shadow.jpg', 'luna.jpg');
                        $thumbs_cat_2 = array(...);
                        $thumbs_cat_3 = array(...);
                        $thumbs_cat_4 = array(...);

                        Then i create the thumbs like this:
                        for($i=0; ...){
                        ....<img src="images/discography/thumbs/<?php echo $thumbs_cat_1[$i]; ?
                        >" alt="" />
                        }

                        All of this works perfectly for the first array.


                        That's why, i think, i need a variable that contains the selection
                        from the user (the category of discography) so i can select values
                        from the correct array.
                        I do it like this:

                        $cat = $_GET['cat']; //output: 1
                        $sel_array = 'thumbs_cat_' . $cat;//create the string: thumbs_cat_1




                        Then i create the thumbs like this:
                        for($i=0; ...){
                        ....<img src="images/discography/thumbs/<?php echo ${$sel_array[$i]}; ?
                        >" alt="" />
                        }
                        .... and so on

                        You think my code makes sense? Maybe i'm doing it wrong.
                        The last part is were im stock...


                        Any ideas what's wrong?
                        Thanks again
                        Marco

                        Comment

                        • SM

                          #13
                          Re: Question about 'sizeof'

                          On May 8, 12:31 pm, Piotr <s...@poczta.on et.plwrote:
                          SM wrote:
                          On May 8, 11:50 am, SM <servandomont.. .@gmail.comwrot e:
                          On May 8, 11:42 am, Piotr <s...@poczta.on et.plwrote:
                          >
                          >>>$thumb = 1;
                          >>>$item = '$thumbs_cat_' . $thumb; //this outputs a string:
                          >>>$thumbs_cat_ 1
                          >>>$item_tota l = sizeof($item);
                          >>>output: Nothing!
                          >>>How do i pass a variable to the 'sizeof' function?
                          >>You should use variable variable:
                          >>$item_total = sizeof($$item);
                          >>Mark double $$
                          >>This is true in any situation, not only with sizeof
                          >Forgot about one small detail:
                          >$item = 'thumbs_cat_' . $thumb; //this outputs a string:
                          >---------^ loose the '$';
                          >best regards
                          >Piotr N
                          I don't need the length of the string , just the actual variable. But
                          i did like the fact that sizeof is an alias of count. So i will use
                          count instead.
                          I didn't know about the $$ tip. Wow! so easy. Thanks, It Works!
                          >
                          Heres the final code:
                          >
                          $thumb = 1;
                          $item = 'thumbs_cat_' . $thumb;
                          $item_total = count($$item);
                          >
                          Thanks again
                          Marco
                          >
                          Maybe i should open a new post for this one, but here it goes:
                          >
                          I'm stock! When i want to reference that variable in a echo statment,
                          it does't work. Any suggestions?
                          Thanks
                          >
                          <li><a href="<?php echo $SERVER['PHP_SELF']; ?>?cat=<?php echo
                          $category_this; ?>"><img src="images/<?php echo($$item[$i]);?>"
                          alt="" /></a></li>
                          >
                          :)
                          It should look like this. Mark the { and }
                          echo ${$item[$i]};
                          >
                          As a side note, is this really best way to access needed data this way ?
                          Cant you keep original values in the array instead of the variable names ?
                          >
                          best regards
                          Piotr N
                          I've tried it, It doesn't work. When i look at the source code, i see
                          an empty string:
                          <img src="images/" alt="" />

                          Here's what im trying to do:
                          -From a list, the user selects the category of discography (either
                          original, compilation, tributes, other)
                          -Each type of discography is associated with an array that contains
                          the name of the cd covers.
                          -Then i show a thumbnail (using a loop) of all the cd covers.

                          my arrays look like this (one for each category of discography)
                          $thumbs_cat_1 = array('moonligh t.jpg'', shadow.jpg', 'luna.jpg');
                          $thumbs_cat_2 = array(...);
                          $thumbs_cat_3 = array(...);
                          $thumbs_cat_4 = array(...);

                          Then i create the thumbs like this:
                          for($i=0; ...){
                          ....<img src="images/discography/thumbs/<?php echo $thumbs_cat_1[$i]; ?
                          >" alt="" />
                          }

                          All of this works perfectly for the first array.


                          That's why, i think, i need a variable that contains the selection
                          from the user (the category of discography) so i can select values
                          from the correct array.
                          I do it like this:

                          $cat = $_GET['cat']; //output: 1
                          $sel_array = 'thumbs_cat_' . $cat;//create the string: thumbs_cat_1




                          Then i create the thumbs like this:
                          for($i=0; ...){
                          ....<img src="images/discography/thumbs/<?php echo ${$sel_array[$i]}; ?
                          >" alt="" />
                          }
                          .... and so on

                          You think my code makes sense? Maybe i'm doing it wrong.
                          The last part is were im stock...


                          Any ideas what's wrong?
                          Thanks again
                          Marco

                          Comment

                          • Jerry Stuckle

                            #14
                            Re: Question about 'sizeof'

                            SM wrote:
                            On May 8, 12:31 pm, Piotr <s...@poczta.on et.plwrote:
                            >SM wrote:
                            >>On May 8, 11:50 am, SM <servandomont.. .@gmail.comwrot e:
                            >>>On May 8, 11:42 am, Piotr <s...@poczta.on et.plwrote:
                            >>>>>>$thumb = 1;
                            >>>>>>$item = '$thumbs_cat_' . $thumb; //this outputs a string:
                            >>>>>>$thumbs_c at_1
                            >>>>>>$item_tot al = sizeof($item);
                            >>>>>>output: Nothing!
                            >>>>>>How do i pass a variable to the 'sizeof' function?
                            >>>>>You should use variable variable:
                            >>>>>$item_tota l = sizeof($$item);
                            >>>>>Mark double $$
                            >>>>>This is true in any situation, not only with sizeof
                            >>>>Forgot about one small detail:
                            >>>>$item = 'thumbs_cat_' . $thumb; //this outputs a string:
                            >>>>---------^ loose the '$';
                            >>>>best regards
                            >>>>Piotr N
                            >>>I don't need the length of the string , just the actual variable. But
                            >>>i did like the fact that sizeof is an alias of count. So i will use
                            >>>count instead.
                            >>>I didn't know about the $$ tip. Wow! so easy. Thanks, It Works!
                            >>>Heres the final code:
                            >>>$thumb = 1;
                            >>>$item = 'thumbs_cat_' . $thumb;
                            >>>$item_tota l = count($$item);
                            >>>Thanks again
                            >>>Marco
                            >>Maybe i should open a new post for this one, but here it goes:
                            >>I'm stock! When i want to reference that variable in a echo statment,
                            >>it does't work. Any suggestions?
                            >>Thanks
                            >><li><a href="<?php echo $SERVER['PHP_SELF']; ?>?cat=<?php echo
                            >>$category_thi s; ?>"><img src="images/<?php echo($$item[$i]);?>"
                            >>alt="" /></a></li>
                            >:)
                            >It should look like this. Mark the { and }
                            >echo ${$item[$i]};
                            >>
                            >As a side note, is this really best way to access needed data this way ?
                            >Cant you keep original values in the array instead of the variable names ?
                            >>
                            >best regards
                            >Piotr N
                            >
                            I've tried it, It doesn't work. When i look at the source code, i see
                            an empty string:
                            <img src="images/" alt="" />
                            >
                            Here's what im trying to do:
                            -From a list, the user selects the category of discography (either
                            original, compilation, tributes, other)
                            -Each type of discography is associated with an array that contains
                            the name of the cd covers.
                            -Then i show a thumbnail (using a loop) of all the cd covers.
                            >
                            my arrays look like this (one for each category of discography)
                            $thumbs_cat_1 = array('moonligh t.jpg'', shadow.jpg', 'luna.jpg');
                            $thumbs_cat_2 = array(...);
                            $thumbs_cat_3 = array(...);
                            $thumbs_cat_4 = array(...);
                            >
                            Then i create the thumbs like this:
                            for($i=0; ...){
                            ...<img src="images/discography/thumbs/<?php echo $thumbs_cat_1[$i]; ?
                            >" alt="" />
                            }
                            >
                            All of this works perfectly for the first array.
                            >
                            >
                            That's why, i think, i need a variable that contains the selection
                            from the user (the category of discography) so i can select values
                            from the correct array.
                            I do it like this:
                            >
                            $cat = $_GET['cat']; //output: 1
                            $sel_array = 'thumbs_cat_' . $cat;//create the string: thumbs_cat_1
                            >
                            >
                            >
                            >
                            Then i create the thumbs like this:
                            for($i=0; ...){
                            ...<img src="images/discography/thumbs/<?php echo ${$sel_array[$i]}; ?
                            >" alt="" />
                            }
                            ... and so on
                            >
                            You think my code makes sense? Maybe i'm doing it wrong.
                            The last part is were im stock...
                            >
                            >
                            Any ideas what's wrong?
                            Thanks again
                            Marco
                            >
                            Why go to all that trouble. Just use a two dimensional array, i.e.

                            $thumb_cats = array();
                            $thumb_cats[] = array('moonligh t.jpg'', shadow.jpg', 'luna.jpg');
                            $thumb_cats[] = array(...);
                            $thumb_cats[] = array(...);
                            $thumb_cats[] = array(...);
                            $thumb_cats[] = array(...);

                            <img src="images/discography/thumbs/<?php echo $thumb_cats[$sel][$i];?>"
                            alt="" />

                            Much cleaner.

                            --
                            =============== ===
                            Remove the "x" from my email address
                            Jerry Stuckle
                            JDS Computer Training Corp.
                            jstucklex@attgl obal.net
                            =============== ===

                            Comment

                            • SM

                              #15
                              Re: Question about 'sizeof'

                              On May 8, 4:27 pm, Jerry Stuckle <jstuck...@attg lobal.netwrote:
                              SM wrote:
                              On May 8, 12:31 pm, Piotr <s...@poczta.on et.plwrote:
                              SM wrote:
                              >On May 8, 11:50 am, SM <servandomont.. .@gmail.comwrot e:
                              >>On May 8, 11:42 am, Piotr <s...@poczta.on et.plwrote:
                              >>>>>$thumb = 1;
                              >>>>>$item = '$thumbs_cat_' . $thumb; //this outputs a string:
                              >>>>>$thumbs_ca t_1
                              >>>>>$item_tota l = sizeof($item);
                              >>>>>output: Nothing!
                              >>>>>How do i pass a variable to the 'sizeof' function?
                              >>>>You should use variable variable:
                              >>>>$item_tot al = sizeof($$item);
                              >>>>Mark double $$
                              >>>>This is true in any situation, not only with sizeof
                              >>>Forgot about one small detail:
                              >>>$item = 'thumbs_cat_' . $thumb; //this outputs a string:
                              >>>---------^ loose the '$';
                              >>>best regards
                              >>>Piotr N
                              >>I don't need the length of the string , just the actual variable. But
                              >>i did like the fact that sizeof is an alias of count. So i will use
                              >>count instead.
                              >>I didn't know about the $$ tip. Wow! so easy. Thanks, It Works!
                              >>Heres the final code:
                              >>$thumb = 1;
                              >>$item = 'thumbs_cat_' . $thumb;
                              >>$item_total = count($$item);
                              >>Thanks again
                              >>Marco
                              >Maybe i should open a new post for this one, but here it goes:
                              >I'm stock! When i want to reference that variable in a echo statment,
                              >it does't work. Any suggestions?
                              >Thanks
                              ><li><a href="<?php echo $SERVER['PHP_SELF']; ?>?cat=<?php echo
                              >$category_this ; ?>"><img src="images/<?php echo($$item[$i]);?>"
                              >alt="" /></a></li>
                              :)
                              It should look like this. Mark the { and }
                              echo ${$item[$i]};
                              >
                              As a side note, is this really best way to access needed data this way ?
                              Cant you keep original values in the array instead of the variable names ?
                              >
                              best regards
                              Piotr N
                              >
                              I've tried it, It doesn't work. When i look at the source code, i see
                              an empty string:
                              <img src="images/" alt="" />
                              >
                              Here's what im trying to do:
                              -From a list, the user selects the category of discography (either
                              original, compilation, tributes, other)
                              -Each type of discography is associated with an array that contains
                              the name of the cd covers.
                              -Then i show a thumbnail (using a loop) of all the cd covers.
                              >
                              my arrays look like this (one for each category of discography)
                              $thumbs_cat_1 = array('moonligh t.jpg'', shadow.jpg', 'luna.jpg');
                              $thumbs_cat_2 = array(...);
                              $thumbs_cat_3 = array(...);
                              $thumbs_cat_4 = array(...);
                              >
                              Then i create the thumbs like this:
                              for($i=0; ...){
                              ...<img src="images/discography/thumbs/<?php echo $thumbs_cat_1[$i]; ?
                              " alt="" />
                              }
                              >
                              All of this works perfectly for the first array.
                              >
                              That's why, i think, i need a variable that contains the selection
                              from the user (the category of discography) so i can select values
                              from the correct array.
                              I do it like this:
                              >
                              $cat = $_GET['cat']; //output: 1
                              $sel_array = 'thumbs_cat_' . $cat;//create the string: thumbs_cat_1
                              >
                              Then i create the thumbs like this:
                              for($i=0; ...){
                              ...<img src="images/discography/thumbs/<?php echo ${$sel_array[$i]}; ?
                              " alt="" />
                              }
                              ... and so on
                              >
                              You think my code makes sense? Maybe i'm doing it wrong.
                              The last part is were im stock...
                              >
                              Any ideas what's wrong?
                              Thanks again
                              Marco
                              >
                              Why go to all that trouble. Just use a two dimensional array, i.e.
                              >
                              $thumb_cats = array();
                              $thumb_cats[] = array('moonligh t.jpg'', shadow.jpg', 'luna.jpg');
                              $thumb_cats[] = array(...);
                              $thumb_cats[] = array(...);
                              $thumb_cats[] = array(...);
                              $thumb_cats[] = array(...);
                              >
                              <img src="images/discography/thumbs/<?php echo $thumb_cats[$sel][$i];?>"
                              alt="" />
                              >
                              Much cleaner.
                              >
                              --
                              =============== ===
                              Remove the "x" from my email address
                              Jerry Stuckle
                              JDS Computer Training Corp.
                              jstuck...@attgl obal.net
                              =============== ===
                              Hey Jeery! Thanks . That help a lot! Much cleaner and nicer.

                              Marco

                              Comment

                              Working...