Получение ключа из массива внутри функции Codeigniter - PullRequest
0 голосов
/ 25 ноября 2010
function uploadify()
 {
  $file = $this->input->post('filearray');
  $data['json'] = json_decode($file);



  print_r($data);

  $name = $this->$json->{'file_name'};

  echo $name;

        $this->files->add($name);

  $this->load->view('uploadify',$data);
 }

Array ([json] => объект stdClass ([имя_файла] => footer-icpn246.jpg [real_name] => footer-icpn2.jpg [file_ext] => .jpg [file_size] => 1.75 [file_path] => /home/codeig/public_html/files/footer-icpn246.jpg [file_temp] => / home / codeig / tmp / php8gFyPG))

Выше приведен вывод изprint_r ($ data);

Как мне тогда извлечь ключ из имени файла из этого массива ???Я пробовал.

$name = $this->$json->{'file_name'};

$name = $this->json->[file_name];

и многие другие комбинации, пожалуйста, помогите.

echo $ name;

Ответы [ 2 ]

0 голосов
/ 25 ноября 2010

Если это вывод print_r($data), вы должны ссылаться на $ data, а не на $ this.В любом случае, как видно из результата print_r, переменная является массивом, «json» - это индекс этого массива, который содержит объект со свойством file_name, поэтому вы должны использовать:

0 голосов
/ 25 ноября 2010

Я думаю, вы должны поступить таким образом

$file = $this->input->post('filearray');
        $json = json_decode($file);

        $user_id = $this->session->userdata('user_id');
        //Add media to DB
        $data= array(
            'file_name' => $json->{'file_name'}, 
            'file_date' => date("Y-m-d H:i:s"),
            'file_type' => $json->{'file_ext'}, 
            'file_size' => $json->{'file_size'},
            'user_id' => $user_id);

эта ссылка может вам помочь http://codeigniter.com/forums/viewthread/109751/P90/

...