directly using an index on returned array

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

    directly using an index on returned array

    Hi,

    Consider the following code:

    -------------------------
    function giveArr(){
    return array("one","tw o","three");
    }

    echo giveArr()[1];
    // I am hoping for "two"
    -------------------------

    This syntax clearly doesn't work.
    Does anybody know if that is possible?
    If so, what is the right syntax?

    (Of course I can store the returned array in some variable, and then use an
    indexing on that variable.)

    I am curious if the above construct is possible (in another syntax
    obviously) with PHP.

    TIA

    Regards,
    Erwin Moller

  • JHN

    #2
    Re: directly using an index on returned array

    Just out of curiosity why would you not want to use something like


    function giveArr($n){
    array("one","tw o","three");
    return array[$n];
    }

    echo giveArr(1);

    Don't know of any other way, but I'm not a pro...

    -Johan


    Erwin Moller wrote:
    Hi,
    >
    Consider the following code:
    >
    -------------------------
    function giveArr(){
    return array("one","tw o","three");
    }
    >
    echo giveArr()[1];
    // I am hoping for "two"
    -------------------------
    >
    This syntax clearly doesn't work.
    Does anybody know if that is possible?
    If so, what is the right syntax?
    >
    (Of course I can store the returned array in some variable, and then use an
    indexing on that variable.)
    >
    I am curious if the above construct is possible (in another syntax
    obviously) with PHP.
    >
    TIA
    >
    Regards,
    Erwin Moller
    >

    Comment

    • Erwin Moller

      #3
      Re: directly using an index on returned array

      JHN wrote:
      Just out of curiosity why would you not want to use something like
      >
      >
      function giveArr($n){
      array("one","tw o","three");
      return array[$n];
      }
      >
      echo giveArr(1);
      No reason.
      I don't actually need this right now.
      And I can also store it in another var as described, and use an index on
      that var.

      This is just something I was trying and couldn't do this way, so I thought I
      might ask in here.

      Regards,
      Erwin Moller
      >
      Don't know of any other way, but I'm not a pro...
      >
      -Johan
      >
      >
      Erwin Moller wrote:
      >Hi,
      >>
      >Consider the following code:
      >>
      >-------------------------
      >function giveArr(){
      > return array("one","tw o","three");
      >}
      >>
      >echo giveArr()[1];
      >// I am hoping for "two"
      >-------------------------
      >>
      >This syntax clearly doesn't work.
      >Does anybody know if that is possible?
      >If so, what is the right syntax?
      >>
      >(Of course I can store the returned array in some variable, and then use
      >an indexing on that variable.)
      >>
      >I am curious if the above construct is possible (in another syntax
      >obviously) with PHP.
      >>
      >TIA
      >>
      >Regards,
      >Erwin Moller
      >>

      Comment

      • Rik

        #4
        Re: directly using an index on returned array

        Erwin Moller wrote:
        Hi,
        >
        Consider the following code:
        >
        -------------------------
        function giveArr(){
        return array("one","tw o","three");
        }
        >
        echo giveArr()[1];
        // I am hoping for "two"
        -------------------------
        >
        This syntax clearly doesn't work.
        Does anybody know if that is possible?
        If so, what is the right syntax?
        Not really. There are some options related to it, like the list()
        construct.
        Also, for this particular case one might use vprintf('%2$s', giveArr());
        --
        Rik Wasmus


        Comment

        Working...