2012-04-25 2 views
-1

Я хочу получить значение массива. Это мое значение массива:Как получить значение массива с помощью php

overlay.txt:

{"title":"sss","description":"sss","code":"sss"} 
{"title":"trtr","description":"trtr","code":"tyrytr"} 
{"title":"ret54","description":"56tr","code":"ty76"} 
{"title":"rgfdg","description":"dfgdfg","code":"dfgdfg"} 
{"title":"asfafdsf","description":"sdfsdf","code":"sdfsdfsdf"} 

Это мой код: но это не working.why? Как получить значение из файла overlay.txt. Я не получил все значения названия. Я не знаю, как получить значение названия из overlay.txt Заголовок $ показывает пустой. Где я хочу изменить в своем коде, чтобы получить $ title value.

$info = array(); 
    $folder_name = $this->input->post('folder_name'); 
    $info['title'] = $this->input->post('title'); 
    $info['description'] = $this->input->post('description'); 
    $info['code'] = $this->input->post('code'); 
    $json = json_encode($info); 
    $file = "./videos/overlay.txt"; 
    $fd = fopen($file, "a"); // a for append, append text to file 
    fwrite($fd, $json); 
    fclose($fd); 
    $filecon = file_get_contents('./videos/overlay.txt', true); 
    $this->load->view('includes/overlays',$filecon); 

    //overlays page; 
    foreach($filecon as $files) 
    { 
     $title=$files['title']; 
     echo $title; 
    } 
+1

Вы должны уточнить, что «это не работает». –

+0

Думаю, вы смешиваете вещи. Ваш json-контент отправляется на php с помощью ajax? «Не работает» означает, что '$ json' равно null? –

+0

ok.how для извлечения значения из файла overlay.txt file.send me php code. –

ответ

0

сделать overlay.txt полностью JSon формат:

[ 
    {"title":"sss","description":"sss","code":"sss"}, 
    {"title":"trtr","description":"trtr","code":"tyrytr"}, 
    ... 
] 

и попробовать это:

$raw = file_get_contents('./videos/overlay.txt', true); 
$this->load->view('includes/overlays', array("filecon" => json_decode($raw))); 

наложенные страницы:

<?php 
foreach($filecon as $files) { 
    echo $files['title']; 
} 
?> 

Если вы хотите использовать $filecon в файл представления,
установить массив, который имеет ключ «filecon» в 0 Второй аргумент.
http://codeigniter.com/user_guide/general/views.html

+0

нет, не ответ –

+0

Это очень простой шаблон. Я думаю, вы должны проверить каждый процесс в порядке или нет. file_get_contents в порядке? Установка простых переменных в $ this-> load-> view() работает нормально? – tosin

+0

u см. Мой код: это правильно или нет? \t \t $ jsonObjects = файл ('./ videos/overlay.txt'); foreach ($ jsonObjects as $ json) { $ array = json_decode ($ json, true); $ prints = $ array ['title']; echo $ prints; } –

1

Вы кодирования ваш массив JSON, так что в какой-то момент вам нужно декодировании снова в массив PHP. Поскольку у вас на самом деле есть несколько объектов JSON в файле, вам необходимо декодировать их по отдельности. Предполагая это всегда один объект JSON в строке, это будет делать:

$jsonObjects = file('overlay.txt', FILE_IGNORE_NEW_LINES); 

foreach ($jsonObjects as $json) { 
    $array = json_decode($json, true); 
    echo $array['title']; 
    ... 
} 

Это будет очень быстро сломаться, если есть разрывы строк в пределах сериализованного JSON, например:

{"title":"ret54","description":"foo 
bar","code":"ty76"} 

Это способ хранения данных не очень надежный.

+0

нет, это не работает. –

+1

Вы пытаетесь быть более точными? «Не работает» - это * не * описание проблемы, которое использует программист. – deceze

+0

ok.tha очень nice.it работает. –

Смежные вопросы