Array Key Nummer in Text ändern und weitere Wert pro Element ergänzen
bearbeitet von TSHello,
> ich habe ein einfaches Array
>
> $arr = array('lorem','ipsum','dolor');
>
> Als erstes möchte ich die Index Werte in einen Text ändern. Statt
>
> [0]=>'lorem',
>
> [1]=>'ipsum',
>
> [2]=>'dolor'
> Müsste es so aussehen:
>
> [0]['wert'] => 'lorem',
>
> [1]['wert'] => 'ipsum',
>
> [2]['wert'] => 'dolor'
~~~php
foreach($arr as $key => $value)
{
$arr[$key] = array('wert' => $value);
}
echo "<pre>\r\n";
echo htmlspecialchars(print_r($arr),1)) . "\r\n";
echo "</pre>\r\n";
~~~
Wenn das Array-Element bereits einen skaleren Wert oder einen String trägt, muss man es vollständig überschreiben mit dem neuen Typ (array).
> Dann möchte ich jedem Element weitere Index Werte nachträglich hinzufügen:
>
> [0]['wert'] => 'lorem',
> [0]['gewicht'] => '4',
>
> [0]['groesse'] => '2',
Das sollte jetzt einfach möglich sein, da $arr[0] ja nun selbst ein array ist.
Du kannst das Array aber ach anders herum aufbauen.
~~~php
$_data['wert'][0] = 'lorem';
$_data['gewicht'][0] = '10';
$_data['gewichseinehit'][0] = 'kg';
$_data['kunde'][0] = 'Kalle Schwobbel';
$_data['wert'][1] = 'ipsum';
$_data['gewicht'][1] = '12';
$_data['gewichseinehit'][1] = 't';
$_data['kunde'][1] = 'Firma Pillenpulle';
~~~
siehe Wiki "[Arrays mal anders herum](https://wiki.selfhtml.org/wiki/PHP/Anwendung_und_Praxis/Arrays_mal_anders_herum)"
Der Aufbau anders herum ha tden Vorteil, dass man auf die einzelnen "Spalten" direkt die Standard-Array-Funktionen, wie sum(), sort(), usw. anwenden kann.
Liebe Grüße
Tom S.
--
Die Krawatte ist das Kopftuch des Westens
Array Key Nummer in Text ändern und weitere Wert pro Element ergänzen
bearbeitet von TSHello,
> ich habe ein einfaches Array
>
> $arr = array('lorem','ipsum','dolor');
>
> Als erstes möchte ich die Index Werte in einen Text ändern. Statt
>
> [0]=>'lorem',
>
> [1]=>'ipsum',
>
> [2]=>'dolor'
> Müsste es so aussehen:
>
> [0]['wert'] => 'lorem',
>
> [1]['wert'] => 'ipsum',
>
> [2]['wert'] => 'dolor'
~~~php
foreach($arr as $key => $value)
{
$arr[$key] = array('wert' => $value);
}
echo "<pre>\r\n";
echo htmlspecialchars(print_r($arr),1)) . "\r\n";
echo "</pre>\r\n";
~~~
Wenn das Array-Element bereits einen skaleren Wert oder einen String trägt, muss man es vollständig überschreiben mit dem neuen Typ (array).
> Dann möchte ich jedem Element weitere Index Werte nachträglich hinzufügen:
>
> [0]['wert'] => 'lorem',
> [0]['gewicht'] => '4',
>
> [0]['groesse'] => '2',
Das sollte jetzt einfach möglich sein, da $arr[0] ja nun selbst ein array ist.
Du kannst das Array aber ach anders herum aufbauen.
$_data['wert'][0] = 'lorem';
$_data['gewicht'][0] = '10';
$_data['gewichseinehit'][0] = 'kg';
$_data['kunde'][0] = 'Kalle Schwobbel';
$_data['wert'][1] = 'ipsum';
$_data['gewicht'][1] = '12';
$_data['gewichseinehit'][1] = 't';
$_data['kunde'][1] = 'Firma Pillenpulle';
siehe Wiki "[Arrays mal anders herum](https://wiki.selfhtml.org/wiki/PHP/Anwendung_und_Praxis/Arrays_mal_anders_herum)"
Der Aufbau anders herum ha tden Vorteil, dass man auf die einzelnen "Spalten" direkt die Standard-Array-Funktionen, wie sum(), sort(), usw. anwenden kann.
Liebe Grüße
Tom S.
--
Die Krawatte ist das Kopftuch des Westens