【问题标题】:How to get length and values of array in php如何在php中获取数组的长度和值
【发布时间】:2021-01-30 05:08:06
【问题描述】:

我有这个数组

  Array
(
    [name] => ["John", "Robert"]
    [address] => ["California", "Scranton"]
    
)

我试图获取名称的值,比如名字是 John,然后第二个名字是 Robert,但是当我尝试像 $request->name[0] 那样访问它时,我只得到“J”字符。 我试图获取它的类型,echo gettype($request->name),它是返回字符串。 以及如何计算以逗号分隔的内容?

谢谢

【问题讨论】:

  • 您可以使用 var_export() 并显示您的数据吗?
  • 试过 var_export,得到这个array ( 'name'=> '["John", "Robert"]' 'address' => '["California", "Scranton"]' )
  • $request['name'][0] 将返回 John。
  • 我得到了 '[' 字符

标签: php laravel


【解决方案1】:

您实际上具有 '["John", "Robert"]' 的值,它存储为 JSON 字符串。您可以通过json_decode() 将其解码为数组并获取数据。

<?php
 
 $request = array ('name'=> '["John", "Robert"]','address' => '["California", "Scranton"]');
 
 $request['name'] = json_decode($request['name'],true);
 
print_r($request['name'][0]);// or echo $request['name'][0];

【讨论】:

    【解决方案2】:

    您可以使用 array_values 来获取数组的值,如下所示:

    list($firstName, $lastName) = array_values($value)[0];
    

    现在 $firstName 是 John,$lastName 是 Robert

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-29
      • 2017-06-19
      • 1970-01-01
      • 2022-09-23
      • 2012-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多