在某些情况下,你可能有一个来自数据库的结构化数组,其中
一个节点如下所示;
<?php
$arr = array(
'name' => 'some name',
'key2' => 'value2',
'title' => 'some title',
'key4' => 4,
'json' => '[1,0,1,1,0]'
);
$keys = array( 'name', 'json', 'title' );
?>
现在考虑你要从 $keys 捕获 $arr 值。
假设你有一定限制,只能按给定的键
顺序显示内容,即与 vsprintf 一起使用,你可以使用以下代码
<?php
$string = "<p>name: %s, json: %s, title: %s</p>";
$keys = array_flip( $keys );
$test = array_intersect_key( $arr, $keys );
echo vsprintf( $string, $test );
$test = array_replace( $keys, $test );
echo vsprintf( $string, $test );
?>
我希望这可以节省大家的时间。