标签: stdclass

我可以像数组一样使用stdClass吗?

是否可以使stdClass对象像通用索引数组一样工作?

即$ array = Array([0] => 120 [1] => 382 [2] => 552 [3] => 595 [4] => 616)

将被构造成像

$a = array();
$array[] = 120;
$array[] = 382;
Run Code Online (Sandbox Code Playgroud)

等等

但如果我用一个对象做它,它只会覆盖自己:

$obj = new stdClass;
$obj->a = 120;
$obj->a = 382;
Run Code Online (Sandbox Code Playgroud)

我知道我每次都可以改变'a'

对不起,如果这是一个愚蠢的问题,但由于某种原因它让我很难过!

感谢任何帮助:)

php arrays stdclass

1
推荐指数
1
解决办法
1万
查看次数

我如何在PHP中排序以下数组/ stdclass对象?

如何在php中用'pos'对这个对象进行排序?

Array ( 
[0] => stdClass Object ( [str] => Mondays [pos] => 170 ) 
[1] => stdClass Object ( [str] => Tuesdays [pos] => 299 )
[2] => stdClass Object ( [str] => Wednesdays [pos] => 355 )
[3] => stdClass Object ( [str] => Thursdays [pos] => 469 )
[4] => stdClass Object ( [str] => Fridays [pos] => 645 )
[5] => stdClass Object ( [str] => Mondays [pos] => 972 )
[6] => stdClass Object ( …
Run Code Online (Sandbox Code Playgroud)

php arrays sorting object stdclass

1
推荐指数
1
解决办法
4258
查看次数

在数据结构中添加stdClass对象(在php中)

stdClass::__set_state(array(
   'zone1' => 
  array (
    0 => 
    stdClass::__set_state(array(
       'id' => '123',
       'owner' => '234',
       ...
    )),
Run Code Online (Sandbox Code Playgroud)

嗨,

我的基础知识有点儿,所以我遇到了麻烦...我需要创建上面的结构,但我不知道如何......

php stdclass data-structures

1
推荐指数
1
解决办法
4943
查看次数

stdClass对象中的正斜杠解析JSON?

我正在尝试访问我使用json_decode创建的JSON对象中的数据(基于URL的结果).回应是:

stdClass Object
(
    [/guid/9202a8c04000641f8000000016f4c9cd] => stdClass Object
        (
            [code] => /api/status/ok
            [result] => stdClass Object
                (
                    [

..
Run Code Online (Sandbox Code Playgroud)

如何访问参数"代码"?

谢谢!

php json stdclass

0
推荐指数
1
解决办法
929
查看次数

如何打印此嵌套 stdClass 对象中的数据?

我正在尝试打印此嵌套 stdClass 对象中的值,但访问它们时遇到问题。例如,如何打印“originCity”的值?

stdClass Object (
    [FlightInfoResult] => stdClass Object (
        [next_offset] => 1 
        [flights] => stdClass Object (
            [ident] => SWA2558
            [aircrafttype] => B737
            [filed_ete] => 00:50:00
            [filed_time] => 1362879561
            [filed_departuretime] => 1362880080
            [filed_airspeed_kts] => 442
            [filed_airspeed_mach] => 
            [filed_altitude] => 410
            [route] => LBY MEI J31 VUZ
            [actualdeparturetime] => 1362880080
            [estimatedarrivaltime] => 1362882900
            [actualarrivaltime] => 1362882600
            [diverted] => [origin] => KMSY
            [destination] => KBHM
            [originName] => New Orleans Intl
            [originCity] => New Orleans, LA
            [destinationName] => Birmingham-Shuttlesworth Intl
            [destinationCity] …
Run Code Online (Sandbox Code Playgroud)

php soap stdclass

0
推荐指数
1
解决办法
5718
查看次数

将元素添加到StdClass数组 - PHP/Codeigniter

我有一个stdClass数组.该数组的输出如下:

Array
(
[0] => stdClass Object
    (
        [vendor_id] => 1
        [user_id] => 1
        [date_created] => 2013-06-12 16:48:38
        [date_edited] => 
        [status] => active
        [user_firstname] => Stuart
        [user_surname] => Blackett
    )
 )
Run Code Online (Sandbox Code Playgroud)

我想要做的是向这个stdClass添加两个变量.它们是"total_bookings"和"total_venues";

我目前正在循环结果,然后计算创建总数.我想将这两个变量添加到该stdClass数组的末尾.

我的PHP如下:

$vendors = $this->po_model->get_all_vendors();

        $this->template->set('total_vendors', count($vendors));

        $count = 0;

        foreach($vendors as $vendor)
        {
            $count++;

            $total_venues = $this->po_model->get_count_venues($vendor->user_id);
            $total_bookings = $this->po_model->get_count_bookings($vendor->user_id);

            $vendors[$count]['total_venues'] = $total_venues;
            $vendors[$count]['total_bookings'] = $total_bookings;
        }
Run Code Online (Sandbox Code Playgroud)

但是,当我var_dump我的Array看起来像这样:

Array
(
    [0] => stdClass Object
        (
            [vendor_id] => 1
            [user_id] => 1
            [date_created] => 2013-06-12 16:48:38
            [date_edited] => …
Run Code Online (Sandbox Code Playgroud)

php arrays codeigniter stdclass

0
推荐指数
1
解决办法
1万
查看次数

PHP将stdClass对象转换为字符串并使用最大值减少数组

我想将一个stdClass对象转换为字符串,并使用该stdClass对象的最大值减少一个数组.

这是我的阵列:

Array
(

[135] => Array
    (
        [0] => stdClass Object
            (
                [ID] => 145
            )

        [1] => stdClass Object
            (
                [ID] => 138
            )

        [2] => stdClass Object
            (
                [ID] => 139
            )

    )

[140] => Array
    (
        [0] => stdClass Object
            (
                [ID] => 163
            )

        [1] => stdClass Object
            (
                [ID] => 155
            )
)
Run Code Online (Sandbox Code Playgroud)

基本上它应该是这样的:

 Array
 (
 [135] => 139
 [140] => 164
 )
Run Code Online (Sandbox Code Playgroud)

这可能吗?我已经尝试了各种foreach循环,但我没有得到它与stdClass对象...

我到目前为止的尝试:

 foreach($ids as $k => $v) …
Run Code Online (Sandbox Code Playgroud)

php arrays stdclass

0
推荐指数
1
解决办法
5861
查看次数

laravel中的类别关系未定义的属性:stdClass ::

嗨,我正在从事laravel培训项目。尝试获取每个产品类别名称时,模型和关系存在问题。
这是我的产品型号

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Product extends Model
{
   public function category()
   {
   return $this->belongsTo('App\Category');
   }
}
Run Code Online (Sandbox Code Playgroud)

和我的类别模型

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Category extends Model
{
   protected $table = 'categories';

   public function products()
   {
      return $this->hasMany('App\Product');
   }
}
Run Code Online (Sandbox Code Playgroud)

当我尝试获取像这样的每个产品的类别名称时

      @foreach($products as $product)
      <tr>
        <td>{{ $product->id }}</td>
        <td>{{ $product->name }}</td>
        <td>{{ $product->category->name }}</td>
      </tr>
      @endforeach
Run Code Online (Sandbox Code Playgroud)

当我运行页面时,出现此错误

Undefined property: stdClass::$category (View: /var/www/html/projectname/resources/views/my/products/index.blade.php)
Run Code Online (Sandbox Code Playgroud)

谁能告诉我是什么原因导致此错误?


这里更新的是表结构
Products:id,name,category_id-> unsigned()
Categories:id,name
,这是我用来获取$ products的代码

    $user_id = Auth::user()->id;
    $products = …
Run Code Online (Sandbox Code Playgroud)

relationship stdclass categories laravel

0
推荐指数
1
解决办法
2131
查看次数

未捕获的错误:无法使用 stdClass 类型的对象作为数组

致命错误:未捕获错误:无法使用 stdClass 类型的对象作为数组

$code = json_decode($src);
echo $code["items"];
Run Code Online (Sandbox Code Playgroud)

var_dump 显示以下内容(截断):

object(stdClass)#7 (3) { ... } 
Run Code Online (Sandbox Code Playgroud)

我不知道它是什么stdClass以及如何使用它。

编辑:

stdClass是一个创建简单对象实例的类。类的属性将使用->而不是[...]符号来访问。

根据 的文档json_decode,简单地将第二个参数设置为true将导致结果是关联数组,它可以像数组一样依次访问。

在发布这个问题时,我没有尝试搜索如何解码 JSON - 因为这非常简单而且我已经开始工作了。我刚刚收到另一个错误(上图),并且没有找到如何解决这个问题的运气。我相信人们也有类似的问题,因为这个问题也得到了一些看法。

php arrays json stdclass

-1
推荐指数
1
解决办法
1万
查看次数