php generiert die entsprechende Array-Methode basierend auf der Zeichenfolge
Zum Beispiel:
<?php $config = array( 'project|page|index' => 'content', 'project|page|nav' => array( array( 'image' => '1.jpg', 'name' => 'home' ), array( 'image' => '2.jpg', 'name' => 'about' ) ), 'project|page|open' => true ); ?>
Generieren Sie das folgende Array
<?php $result = array( 'project' => array( 'page' => array( 'index' => 'content', 'nav' => array( array( 'image' => '1.jpg', 'name' => 'home' ), array( 'image' => '2.jpg', 'name' => 'about' ) ), 'open' => true ) ) ); ?>
-Methode gemäß $config: Verwenden Sie eval, um <🎜 zu implementieren >
<?php $config = array( 'project|page|index' => 'content', 'project|page|nav' => array( array( 'image' => '1.jpg', 'name' => 'home' ), array( 'image' => '2.jpg', 'name' => 'about' ) ), 'project|page|open' => true ); $result = array(); foreach($config as $key=>$val){ $tmp = ''; $keys = explode('|', $key); for($i=0,$len=count($keys); $i<$len; $i++){ $tmp .= "['".$keys[$i]."']"; } if(is_array($val)){ eval('$result'.$tmp.'='.var_export($val,true).';'); }elseif(is_string($val)){ eval('$result'.$tmp.'='.$val.';'); }else{ eval('$result'.$tmp.'=$val;'); } } print_r($result); ?>
Ausgabeergebnis:
Array ( [project] => Array ( [page] => Array ( [index] => content [nav] => Array ( [0] => Array ( [image] => 1.jpg [name] => home ) [1] => Array ( [image] => 2.jpg [name] => about ) ) [open] => 1 ) ) )
Erklärung zur Lösung für das Fehlen doppelter Anführungszeichen im JSON-String-Schlüssel
So erhalten Sie die HTTPS-Anfragemethode über Curl
Erklärung zum Hochladen von Bildern und Speichern in der Datenbank über PHP
Das obige ist der detaillierte Inhalt vonSo generieren Sie ein entsprechendes Array basierend auf einem String über PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!