Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP=>;变量作为字符串来检查数组[键]?_Php - Fatal编程技术网

PHP=>;变量作为字符串来检查数组[键]?

PHP=>;变量作为字符串来检查数组[键]?,php,Php,我有一个像这样的变量 $var = '["continent"]["country"]["province"]'; 我想检查var是否是数组中的键 这是我尝试过的,可惜没有成功 if (!isset($array.$var)) : do... endif; 有没有一种原生PHP方法可以做到这一点?我不是PHP向导,谢谢 如果格式确实是这样,您可以这样做: <?php // Convert into a proper PHP array by trimming the extr

我有一个像这样的变量

$var = '["continent"]["country"]["province"]';
我想检查var是否是数组中的键

这是我尝试过的,可惜没有成功

if (!isset($array.$var)) :
     do...
endif;

有没有一种原生PHP方法可以做到这一点?我不是PHP向导,谢谢

如果格式确实是这样,您可以这样做:

<?php
// Convert into a proper PHP array by trimming the extra stuff and exploding:
$var = '["continent"]["country"]["province"]';
$var = trim($var, '["');
$var = explode('"]["', $var);
// Apply native array functions...
$key = "country";
if (in_array($key, $var))
    // Do something if present
    echo "Present";
else
    echo "Not Present";
?>

演示:

您可以使用
array\u key\u存在($key,$array)

测试该密钥是否存在于数组中。。 例如


array_key_exists()是一个php方法,如果在数组中设置了给定的键,它将返回TRUE。键可以是数组索引可能的任何值。 有关此信息,请参阅以下文档。
那也不是PHP。你从哪里得到这个字符串的?我认为这段代码不是从php得到的。请检查。是否要检查数组中是否确实存在
$var
as键,或者您的意思是
$xy[“大陆”][“国家”][“省”]
是否存在?是的,我想知道$xy[“大陆”][“国家”][“省”]是否存在。如果没有,则创建Hanks,这样做有效。但是当数组I不存在时,如何在数组I中插入密钥呢?要插入一个新的键值对,
$array['[“fine”][“new”][“shoes”]]='baz'
<?php
$search_array = array('stack' => 1, 'overflow' => 2);
if (array_key_exists('stack', $search_array)) {
    echo "The element is in the array";
}
?>
<?php

$array = array(
    '["continent"]["country"]["province"]' => 'foo',
    '["big"]["fat"]["mama"]' => 'bar'
);

$var = '["continent"]["country"]["province"]';

if (array_key_exists($var,$array))
    print 'key is in the array';