【问题标题】:Variable string use in Array phpArray php中的变量字符串使用
【发布时间】:2015-02-07 09:16:41
【问题描述】:

我想在数组中使用变量字符串,就像我将数组值保存在任何文件或文档或变量中一样,我想在数组中使用它但我没有这样做。

$var = "'title' => 'This is my title','name' => 'My name is John'";

$ar = array($var); 

echo $ar['title'].'<br>'.$ar['name'];

我遇到的错误

Notice: Undefined index: title
Notice: Undefined index: name

【问题讨论】:

标签: php arrays


【解决方案1】:

您可以使用 strtok() 函数将字符串拆分为带有分隔符的数组。

试试下面的代码:

<?php
  $var = "'title' => 'This is my title','name' => 'My name is John'";
  $ar = strtok($var,",");
  while ($ar!==false)
  {
    echo "$ar<br>";
    $ar=strtok(",");
  }
 ?>

这里我使用了“,”作为分隔符。

输出:

'title' => '这是我的标题'

'name' => '我叫约翰'

【讨论】:

  • 是的,但我想在变量中分配标题和名称的值,这样我就可以在任何地方使用它,例如$mytitle = $var['title']; echo $mytitle; Output will be 'This is my title'
  • 请认为数组不是具有键值对的映射。 Array 无法实现您的要求。
【解决方案2】:

试试这个:

$ar = array('title' => 'This is my title','name' => 'My name is John');

【讨论】:

  • 我知道我可以这样做,但我想使用变量并假设数组值保存在变量中,就像这样没有改变$var = "'title' =&gt; 'This is my title','name' =&gt; 'My name is John'";
  • $var 被存储为第 0 个位置的单个维度值。因此,如果您回显 $ar[0] 将为您提供 $var 值。您可以使用explode 来获取数组。 explode(',', $var);
猜你喜欢
  • 2013-03-30
  • 1970-01-01
  • 2010-11-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多