【问题标题】:How to get the 0th index key values in array object如何获取数组对象中的第 0 个索引键值
【发布时间】:2017-04-02 19:52:19
【问题描述】:

我在那个对象中有一个数组对象galleryImages我有类似json字符串,在这个galleryImages中我想只显示第一个图像值,如何获得唯一的第一个图像值?

我的数组检查如下

$data=Array
(
    [dbResultgallery] => Array
        (
            [0] => stdClass Object
                (
                    [gallery_id] => 1
                    [className] => 1
                    [sectionName] => 1
                    [title] => Title 1
                    [description] => gfhfg
                    [galleryImages] => ["1.jpeg","2.jpg"]
                    [reg_on] => 2017-04-03 12:21:59
                    [created_by] => soupranjali@gmail.com
                    [school_id] => 2
                    [status] => 0
                )

            [1] => stdClass Object
                (
                    [gallery_id] => 2
                    [className] => 1
                    [sectionName] => 1
                    [title] => Title 2
                    [description] => sdfdsfsdfsdfsdf
                    [galleryImages] => ["3.jpeg","4.jpg","5.jpg"]
                    [reg_on] => 2017-04-03 12:23:37
                    [created_by] => soupranjali@gmail.com
                    [school_id] => 2
                    [status] => 0
                )

        )

)

现在我正在使用 json_decode ,请参阅下面的代码

foreach ($dbResultgallery as $gal) : 
    $role = json_decode($gal->galleryImages,true);
 endforeach;

现在我得到了类似的数组格式

Array
    (
        [0] => 1.jpeg
        [1] => 2.jpg
    )

    Array
    (
        [0] => 3.jpeg
        [1] => 4.jpg
        [2] => 5.jpg
    )

预期结果

我只需要像 1.jpeg 和 3.jpeg 之类的第一个图像值,每个数组我只需要第 0 个键值

更新代码

var_dump(json_decode($gal->galleryImages,true))

array(2) {

 [0]=>
  string(37) "6be1954c4bec91fe26fb7447fc551782.jpeg"
  [1]=>
  string(36) "153651d989591e76444c92cf037d5ac4.jpg"
}

array(3) {
  [0]=>
  string(37) "f356ceafa408e61cd1c62cfc39752b32.jpeg"
  [1]=>
  string(36) "a4fd29005696d92e0fc4cd3931454609.jpg"
  [2]=>
  string(36) "8eaaecdac1ff219192806acba7978a1b.jpg"
}

【问题讨论】:

    标签: php arrays object multidimensional-array


    【解决方案1】:

    改成这样:

    $role = json_decode($gal->galleryImages,true)[0];
    

    【讨论】:

    • 现在得到像第一个字符串一样的答案,这意味着我的图像值 one.jpeg 和 3,jpg 意味着我得到像 o 和 t 这样的答案
    • @subikshanM 好的,var_dump(json_decode($gal->galleryImages,true)); 有什么用?
    • 你能告诉我解决办法是什么
    • @subikshanM 如果var_dumps 是您发布的内容,那么我的答案中当前的代码将起作用。
    • 哦对不起对不起,我的错误我必须删除 for 循环意味着您的答案工作正常非常非常感谢 Schlaus 先生
    【解决方案2】:
       foreach ($dbResultgallery as $gal) : 
           if(strpos(json_decode($gal->galleryImages,true) ,"jpeg")!== false){
             echo 'found'; // do your stuff here
           $role = json_decode($gal->galleryImages[0],true);
            }
        endforeach
    

    【讨论】:

    • 没有基于扩展我写的代码,对我来说不合适,我需要第一个索引值
    • 你能告诉我解决办法是什么
    猜你喜欢
    • 2021-03-17
    • 2020-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-23
    • 1970-01-01
    • 2019-10-19
    • 2021-12-06
    相关资源
    最近更新 更多