Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.php > #18753

Re: ArrayObject class unusable as array

From Arno Welzel <usenet@arnowelzel.de>
Newsgroups comp.lang.php
Subject Re: ArrayObject class unusable as array
Date 2021-07-26 12:12 +0200
Message-ID <im7g50F9uq6U1@mid.individual.net> (permalink)
References <sddtvf$11ug$1@gioia.aioe.org> <ilvkcuFls6iU1@mid.individual.net> <sdgfq4$nd3$1@gioia.aioe.org> <im5jrrFsqrkU1@mid.individual.net> <sdlou2$1j06$1@gioia.aioe.org>

Show all headers | View raw


alex:

> Il 25/07/21 19:03, Arno Welzel ha scritto:
>> alex:
>>
>> [...]
>>> echo "Object to array implicit conversion: ERROR \n";
>>> array_merge(
>>>       new ArrayObject,
>>>       new ArrayObject,
>>> );
>>>
>>> Output:
>>>
>>> Object to string implicit conversion: OK
>>> MyClass
>>> Object to array implicit conversion: ERROR
>>>
>>> Warning: array_merge(): Expected parameter 1 to be an array, object
>>> given in /home/rino/Scaricati/esperimenti/merge-ArrayObject.php
>>
>> Because ArrayObject() is not an array.
>>
>> See <https://www.php.net/manual/en/class.arrayobject.php>
>>
> 
> mmmmhhhhhhhhhh...
> Just like MyClass is not a string... :|

Yes, but MyClass provides the method __toString() which allows it to be
used *like* a string. When asked for, MyClass will just return a string
representation of itself as the return value of its __toString() method.

However - there is no __toArray() method to rturn an array when needed.
That's the reason why ArrayObject provides getArrayCopy() to get a copy
of the array object as an array value.

Also see:

<https://www.php.net/manual/en/language.oop5.magic.php>
<https://www.php.net/manual/en/arrayobject.getarraycopy.php>

-- 
Arno Welzel
https://arnowelzel.de

Back to comp.lang.php | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

ArrayObject class unusable as array alex <1j9448a02@lnx159sneakemail.com.invalid> - 2021-07-23 10:17 +0200
  Re: ArrayObject class unusable as array Arno Welzel <usenet@arnowelzel.de> - 2021-07-23 12:36 +0200
    Re: ArrayObject class unusable as array alex <1j9448a02@lnx159sneakemail.com.invalid> - 2021-07-24 09:34 +0200
      Re: ArrayObject class unusable as array Arno Welzel <usenet@arnowelzel.de> - 2021-07-25 19:03 +0200
        Re: ArrayObject class unusable as array alex <1j9448a02@lnx159sneakemail.com.invalid> - 2021-07-26 09:40 +0200
          Re: ArrayObject class unusable as array Arno Welzel <usenet@arnowelzel.de> - 2021-07-26 12:12 +0200
            Re: ArrayObject class unusable as array alex <1j9448a02@lnx159sneakemail.com.invalid> - 2021-07-26 12:48 +0200
              Re: ArrayObject class unusable as array Jerry Stuckle <jstucklex@attglobal.net> - 2021-07-26 14:38 -0400
              Re: ArrayObject class unusable as array Arno Welzel <usenet@arnowelzel.de> - 2021-07-30 12:34 +0200

csiph-web