• <bdo id='bLfzC'></bdo><ul id='bLfzC'></ul>
    <tfoot id='bLfzC'></tfoot>

    <i id='bLfzC'><tr id='bLfzC'><dt id='bLfzC'><q id='bLfzC'><span id='bLfzC'><b id='bLfzC'><form id='bLfzC'><ins id='bLfzC'></ins><ul id='bLfzC'></ul><sub id='bLfzC'></sub></form><legend id='bLfzC'></legend><bdo id='bLfzC'><pre id='bLfzC'><center id='bLfzC'></center></pre></bdo></b><th id='bLfzC'></th></span></q></dt></tr></i><div id='bLfzC'><tfoot id='bLfzC'></tfoot><dl id='bLfzC'><fieldset id='bLfzC'></fieldset></dl></div>

    <small id='bLfzC'></small><noframes id='bLfzC'>

      <legend id='bLfzC'><style id='bLfzC'><dir id='bLfzC'><q id='bLfzC'></q></dir></style></legend>
      1. Yii 对重载属性的间接修改

        时间:2023-09-24

        <small id='Ns2EQ'></small><noframes id='Ns2EQ'>

                <tbody id='Ns2EQ'></tbody>

            1. <legend id='Ns2EQ'><style id='Ns2EQ'><dir id='Ns2EQ'><q id='Ns2EQ'></q></dir></style></legend>
                <i id='Ns2EQ'><tr id='Ns2EQ'><dt id='Ns2EQ'><q id='Ns2EQ'><span id='Ns2EQ'><b id='Ns2EQ'><form id='Ns2EQ'><ins id='Ns2EQ'></ins><ul id='Ns2EQ'></ul><sub id='Ns2EQ'></sub></form><legend id='Ns2EQ'></legend><bdo id='Ns2EQ'><pre id='Ns2EQ'><center id='Ns2EQ'></center></pre></bdo></b><th id='Ns2EQ'></th></span></q></dt></tr></i><div id='Ns2EQ'><tfoot id='Ns2EQ'></tfoot><dl id='Ns2EQ'><fieldset id='Ns2EQ'></fieldset></dl></div>
                <tfoot id='Ns2EQ'></tfoot>

                • <bdo id='Ns2EQ'></bdo><ul id='Ns2EQ'></ul>
                  本文介绍了Yii 对重载属性的间接修改的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  $winnerBid = Bids::model()->find($criteria);
                  

                  模型有下一个关系:

                  public function relations() {
                          return array(
                              'item' => array(self::BELONGS_TO, 'Goods', 'item_id'),
                              'room' => array(self::BELONGS_TO, 'Rooms', 'room_id'),
                              'seller' => array(self::BELONGS_TO, 'RoomPlayers', 'seller_id'),
                              'buyer' => array(self::BELONGS_TO, 'RoomPlayers', 'buyer_id'),
                          );
                      }
                  

                  当我试图保存时:

                   $this->seller->current_item++;
                      $this->seller->wins++;
                      $this->seller->save();
                  

                  我收到错误:

                  重载的间接修改property Bids::$seller 无效(/var/www/auction/www/protected/models/Bids.php:16)

                  Indirect modification of overloaded property Bids::$seller has no effect (/var/www/auction/www/protected/models/Bids.php:16)

                  但是在另一台服务器上一切正常吗?如何解决?或者覆盖 php 指令?有任何想法吗?TNX

                  推荐答案

                  这里的问题是 $seller 不是一个真正的"属性(Yii 通过使用魔法 __get 方法),因此实际上您正在尝试修改函数的返回值(无效).就好像你试图这样做:

                  The problem here is that $seller is not a "real" property (Yii implements properties on its Models by using the magic __get method), so in effect you are trying to modify the return value of a function (which has no effect). It is as if you tried to do:

                  function foo() {
                      return 42;
                  }
                  
                  // INVALID CODE FOR ILLUSTRATION
                  (foo())++;
                  

                  我不确定此行为在不同 PHP 版本上的状态,但您可以使用一个简单的解决方法:

                  I 'm not sure about the status of this behavior on different PHP versions, but there is an easy workaround you can use:

                  $seller = $this->seller;
                  $seller->current_item++;
                  $seller->wins++;
                  $seller->save();
                  

                  这篇关于Yii 对重载属性的间接修改的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  上一篇:Yii cgridview ajaxUpdate 属性 下一篇:yii2:使复选框被选中

                  相关文章

                • <small id='mQIUy'></small><noframes id='mQIUy'>

                    <legend id='mQIUy'><style id='mQIUy'><dir id='mQIUy'><q id='mQIUy'></q></dir></style></legend>
                  1. <i id='mQIUy'><tr id='mQIUy'><dt id='mQIUy'><q id='mQIUy'><span id='mQIUy'><b id='mQIUy'><form id='mQIUy'><ins id='mQIUy'></ins><ul id='mQIUy'></ul><sub id='mQIUy'></sub></form><legend id='mQIUy'></legend><bdo id='mQIUy'><pre id='mQIUy'><center id='mQIUy'></center></pre></bdo></b><th id='mQIUy'></th></span></q></dt></tr></i><div id='mQIUy'><tfoot id='mQIUy'></tfoot><dl id='mQIUy'><fieldset id='mQIUy'></fieldset></dl></div>

                      • <bdo id='mQIUy'></bdo><ul id='mQIUy'></ul>
                      <tfoot id='mQIUy'></tfoot>