2016-05-04 15 views
-2

Ich habe diese Abfrage auf mysql, und ich erhalte dieses Array mit print_r(): nur die [Name] extrahieren von $ Daten für jeden Eingangeinen bestimmten Wert von Array Erste

$data = Array ([2] => Array ([0] => Array ([sale_order_value_id] => 3 [sale_order_id] => 2 [name] => Comprobante Fiscal [value] => Consumidor Final [price] => 0.0000) [1] => Array ([sale_order_value_id] => 4 [sale_order_id] => 2 [name] => RNC/Cédula [value] => 00111936266 [price] => 0.0000))) 

Ich möchte Ich habe versucht explode(), um die Werte zu trennen, aber das hilft nicht.

+0

Ich habe auch versucht Echo $ data [0] [ 'name']; und $ data = array_shift ($ data); echo $ data ['name']; aber ich bekomme nichts damit –

+1

Wie gehst du das holen? – tadman

Antwort

0

Hier ist eine richtige Art und Weise, es zu tun:

Durch die Verwendung von array_column():

Beispiel:

<?php 
// Array representing a possible record set returned from a database 
$records = array(
    array(
     'id' => 2135, 
     'first_name' => 'John', 
     'last_name' => 'Doe', 
    ), 
    array(
     'id' => 3245, 
     'first_name' => 'Sally', 
     'last_name' => 'Smith', 
    ), 
    array(
     'id' => 5342, 
     'first_name' => 'Jane', 
     'last_name' => 'Jones', 
    ), 
    array(
     'id' => 5623, 
     'first_name' => 'Peter', 
     'last_name' => 'Doe', 
    ) 
); 

$first_names = array_column($records, 'first_name'); 
print_r($first_names); 
?> 

OUTPUT:

Array 
(
    [0] => John 
    [1] => Sally 
    [2] => Jane 
    [3] => Peter 
) 

Und ja in Ihrem Fall kann es zu wie auf diese Weise durchgeführt werden, da es leicht:

IHREN CODE:

<?php 
$data = array(2 => array(0 => array('name' => "John"))); 
//You can simply print the name column value like this 
echo $data[2][0]["name"]; 
?> 

Ausgang Ihres Code:

John 

Live Arbeitslink Ihres Codes:https://eval.in/565707

0
echo implode (',',array_column($data[2], 'name')); 

array_column bekommt jeden Namen in einem Array, dann implode ich sie wie Sie gefragt haben.

Demo: http://ideone.com/PfX7HA

+0

YEs ... das hat funktioniert ... ich habe an PHP 5.3 gearbeitet und hatte viele Probleme ... jetzt bin ich auf PHP 5.5 und alles funktioniert gut. –

0

Sie können die Verwendung folgende Ihre genaue Ausgabe zu erhalten ...

$data = array (array ('sale_order_value_id' => 3, 
          'sale_order_id' => 2, 
          'name' => 'Comprobante Fiscal', 
          'value' => 'Consumidor Final',     
          'price' => 0.0000), 
       array ('sale_order_value_id' => 4, 
          'sale_order_id' => 2, 
          'name' => 'RNC/Cédula', 
          'value' => 00111936266, 
          'price' => 0.0000) 
      ) ; 

$names = array_column($data, 'name');

Verwandte Themen