0

ここで質問を確認するなど、これについて髪の毛を伸ばしてきました(たとえば、このようなものです:Read var_dump data with PHP)が、私はそれを理解していません。

次の値を取得しようとしています。

COM_USERS_REGISTRATION_SAVE_FAILED

そしてそれを変数として保存します。これは、私がそれを取得しようとしている絶対的な混乱です(私には理解できません)(テキストの最後の行です):

object(UsersModelRegistration)#98 (9)
    { ["data:protected"]=> object(stdClass)#106 (1) { 
        ["groups"]=> array(1) {
            [0]=> string(1) "2" } }         
    ["_forms:protected"]=> array(0) { }
    ["__state_set:protected"]=> NULL
    ["_db:protected"]=> object(JDatabaseMySQL)#15 (19) {
        ["name"]=> string(5) "mysql"
        ["nameQuote:protected"]=> string(1) "`"
        ["nullDate:protected"]=> string(19) "0000-00-00 00:00:00"
        ["dbMinimum:protected"]=> string(5) "5.0.4"
        ["_database:private"]=> string(15) "table_joomla"
        ["connection:protected"]=> resource(29) of type (mysql link)
        ["count:protected"]=> int(0)
        ["cursor:protected"]=> resource(83) of type (Unknown)
        ["debug:protected"]=> bool(false)
        ["limit:protected"]=> int(0)
        ["log:protected"]=> array(0) { }
        ["offset:protected"]=> int(0)
        ["sql:protected"]=> object(JDatabaseQueryMySQL)#126 (18) {
            ["db:protected"]=> *RECURSION*
            ["type:protected"]=> string(6) "select"
            ["element:protected"]=> NULL
            ["select:protected"]=> object(JDatabaseQueryElement)#127 (3) {
                ["name:protected"]=> string(6) "SELECT"
                ["elements:protected"]=> array(1) {[0]=> string(4) "`id`" }
                ["glue:protected"]=> string(1) "," }
            ["delete:protected"]=> NULL
            ["update:protected"]=> NULL
            ["insert:protected"]=> NULL
            ["from:protected"]=> object(JDatabaseQueryElement)#128 (3) {
                ["name:protected"]=> string(4) "FROM"
                ["elements:protected"]=> array(1) {
                    [0]=> string(10) "`#__users`" }
            ["glue:protected"]=> string(1) "," }
            ["join:protected"]=> NULL
            ["set:protected"]=> NULL
            ["where:protected"]=> object(JDatabaseQueryElement)#129 (3) {
                ["name:protected"]=> string(5) "WHERE"
                ["elements:protected"]=> array(2) {
                    [0]=> string(31) "`username` = 'test123@mail.com'"
                    [1]=> string(9) "`id` != 0" }
            ["glue:protected"]=> string(5) " AND " }
            ["group:protected"]=> NULL ["having:protected"]=> NULL
            ["columns:protected"]=> NULL ["values:protected"]=> NULL
            ["order:protected"]=> NULL ["union:protected"]=> NULL
        ["autoIncrementField:protected"]=> NULL }
        ["tablePrefix:protected"]=> string(6) "s7kou_"
        ["utf:protected"]=> bool(true)
        ["errorNum:protected"]=> int(0)
        ["errorMsg:protected"]=> string(0) ""
        ["hasQuoted:protected"]=> bool(false)
    ["quoted:protected"]=> array(0) { } }
    ["name:protected"]=> string(12) "registration"
    ["option:protected"]=> string(9) "com_users"
    ["state:protected"]=> object(JObject)#99 (1) {
        ["_errors:protected"]=> array(0) { } }
    ["event_clean_cache:protected"]=> string(19) "onContentCleanCache"
    ["_errors:protected"]=> array(1) {
        [0]=> string(34) "COM_USERS_REGISTRATION_SAVE_FAILED" } }
4

2 に答える 2

0

クラスソースを見てください。おそらく、この値を返すメソッドがあります。保護されたプロパティ(リフレクションまたはオブジェクトの配列への変換)アクセスするためのソリューションがありますが、カプセル化のOOP原則に完全に違反しているため、これらはお勧めしません。属性は理由で保護されています。のパブリックインターフェイスを介してアクセスする必要があります。UserModelRegistration

于 2013-02-07T07:53:41.477 に答える
0

オブジェクトのすべてのプロパティは保護されています。それらにアクセスするには、UsersModelRegistration クラスに「ゲッター」を実装するか、UsersModelRegistration を拡張してゲッターを実装する必要があります。

/**
* @returns array
*/
public function getErrors(){

return $this->_errors;
}
于 2013-02-07T07:41:09.850 に答える