Проверка ключа в массиве

Тема в разделе "PHP", создана пользователем Parviz555, 9 июл 2011.

Модераторы: latteo
  1. Parviz555

    Parviz555

    Регистр.:
    29 янв 2009
    Сообщения:
    161
    Симпатии:
    37
    Реально туплю, ничего в голову не приходит.
    Нужно проверить наличие ключа в массиве

    $info Сам массив:
    PHP:
    Array
    (
        [
    format_name] => MP3
        
    [encoder_version] => LAME3.98r
        
    [encoder_options] => CBR128
        
    [bitrate_mode] => cbr
        
    [channels] => 2
        
    [sample_rate] => 44100
        
    [bits_per_sample] => 
        [
    playing_time] => 198.47825
        
    [playtime_string] => 3:18
        
    [avg_bit_rate] => 128000
        
    [tags] => Array
            (
                [
    id3v2] => Array
                    (
                        [
    title] => Array
                            (
                                [
    0] => Rio Heist (Original Motion Picture Soundtrack)
                            )

                        [
    artist] => Array
                            (
                                [
    0] => Форсаж 5 (Fast and Furious 5)
                            )

                        [
    encoder_settings] => Array
                            (
                                [
    0] => LAME 64bits version 3.98.4 (http://www.mp3dev.org/)
                            
    )

                        [
    length] => Array
                            (
                                [
    0] => 198414
                            
    )

                    )

            )

        [
    comments] => 
        [
    warning] => 
        [
    md5] => 
        [
    filesize] => 3175984
    )
    PHP:
    if(array_key_exists("format_name",$info)) {
    echo 
    "ключ найден";
    }
    А как сделать проверку для $info['tags']['id3v2']['title'][0] ??
    Т.е. нужно проверить наличие ключа title.


    Так не пашет:
    PHP:
    if(array_key_exists("title",$info)) {
    echo 
    "ключ найден";
    }
     
  2. gres_18

    gres_18 Pythonобандерівець®

    Регистр.:
    26 апр 2009
    Сообщения:
    407
    Симпатии:
    206
    Возможно, это поможет.
     
  3. betatest

    betatest

    Регистр.:
    3 дек 2007
    Сообщения:
    517
    Симпатии:
    127

    наличием массива, например
    PHP:
    <?php
    $info
    ['tags']['id3v2']=array();
    $info['tags']['id3v2']['title1'][0]=1;
    $info['tags']['id3v2']['title'][1]=1;
    $info['tags']['id3v2']['title2'][2]=1;

    if( 
    is_array($info['tags']['id3v2']['title']) ) {  echo("ключ найден!"); }
    ?>
     
  4. AXP

    AXP Создатель

    Регистр.:
    16 мар 2007
    Сообщения:
    27
    Симпатии:
    2
    PHP:
    <?php 
    function in_array_recursive($needle$haystack) { 
         
    $it = new RecursiveIteratorIterator(new RecursiveArrayIterator($haystack)); 
         foreach(
    $it AS $element) { 
             if(
    $element == $needle) { 
                 return 
    true
             } 
         } 
         return 
    false
     } 
    ?>
    http://php.net/in_array