Autor Zpráva
tester
Profil *
V režimu strict dostávám hlášku "Creating default object from empty value .."

$u->news = clone $Results->short;

Používám třídu, která má shromažďovat data o uživateli, hlavně toho přihlášeného). $u je uživatel, Short je objekt se základními informacemi o uživateli nebo pro uživatele, každý člen obsahuje pole s výsledky.

V includovaném souboru s třídou vytvářím novou instanci Results.
$Results = New Results($a); // add input action 
a pak v index.php dostávám tu hlášku. Protože uživatel je ještě nepřihlášený je drtivá většina polí nevyplněných. Jedná se ale o strukturované pole, které reflektuje několik tabulek.

Otázka zní, co musím udělat? Je třeba vytvořit funkci, která inicializuje všechny členy třídy? Co konkrétně mu vadí, že jsou tam prázdná a případně že hodnoty v polích by byly null kdybych je tam přidal?

Short Object
(
    [colors] => Array
        (
            [0] => b
        )

    [ids] => Array
        (
            [0] => 1
        )

    [users] =>  OR id='1' 
    [ages] => Array
        (
        )

    [genders] => Array
        (
        )

    [news] => Array
        (
            [0] => V poslední době jsme provedli několik updatů ve stylopisech. Nyní probíhá práce v administrátorském rozhraní.
        )

    [dates] => Array
        (
            [0] => 6.1.2014
        )

    [subjects] => Array
        (
            [0] => updatujeme css
        )

    [cats] => Array
        (
        )

    [urls] => Array
        (
        )

    [descriptions] => Array
        (
        )

    [keywords] => Array
        (
        )

    [numbers] => Array
        (
        )

    [messages] => Array
        (
        )

    [replies] => Array
        (
        )

    [mdates] => Array
        (
        )

    [uids] => Array
        (
        )

    [status] => Array
        (
        )

    [read] => Array
        (
        )

    [badwords] => Array
        (
        )

    [badrate] => Array
        (
        )

    [badscore] => Array
        (
        )

    [photos] => Array
        (
        )

)
<br />
Alphard
Profil
A jak se vytváří $u, není tam chyba? Zkontrolujte var_dump($u).
Nebo $Results, z chybové hlášky nevím, ve které proměnné je problém.
tester
Profil *
      $u->news = clone $Results->short;
      var_dump($u);

object(stdClass)#18 (1) {
  ["news"]=>
  object(Short)#17 (23) {
    ["colors"]=>
    array(1) {
      [0]=>
      string(1) "b"
    }
    ["ids"]=>
    array(1) {
      [0]=>
      string(1) "1"
    }
    ["users"]=>
    string(11) " OR id='1' "
    ["ages"]=>
    array(0) {
    }
    ["genders"]=>
    array(0) {
    }
    ["news"]=>
    array(1) {
      [0]=>
      string(168) "V posledn&iacute; době jsme provedli několik updatů ve stylopisech. Nyn&iacute; prob&iacute;h&aacute; pr&aacute;ce v administr&aacute;torsk&eacute;m rozhran&iacute;."
    }
    ["dates"]=>
    array(1) {
      [0]=>
      string(8) "6.1.2014"
    }
    ["subjects"]=>
    array(1) {
      [0]=>
      string(14) "updatujeme css"
    }
    ["cats"]=>
    array(0) {
    }
    ["urls"]=>
    array(0) {
    }
    ["descriptions"]=>
    array(0) {
    }
    ["keywords"]=>
    array(0) {
    }
    ["numbers"]=>
    array(0) {
    }
    ["messages"]=>
    array(0) {
    }
    ["replies"]=>
    array(0) {
    }
    ["mdates"]=>
    array(0) {
    }
    ["uids"]=>
    array(0) {
    }
    ["status"]=>
    array(0) {
    }
    ["read"]=>
    array(0) {
    }
    ["badwords"]=>
    array(0) {
    }
    ["badrate"]=>
    array(0) {
    }
    ["badscore"]=>
    array(0) {
    }
    ["photos"]=>
    array(0) {
    }
  }
}
Kubo2
Profil
tester:
$u bola pravdepodobne NULL alebo vôbec neexistovala, preto sa pri pokuse o vytvorenie vlastnosti news na tejto premennej implicitne pretypovala na objekt stdClass a PHP ťa o tom informovalo hláškou Strict Standards.

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: