<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 前言:此部分与正文内容无关,可以放置一些初始化代码或调试信息</span></span><span>
</span><span><span class="hljs-title function_ invoke__">ini_set</span></span><span>(</span><span><span class="hljs-string">'display_errors'</span></span><span>, </span><span><span class="hljs-number">1</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">error_reporting</span></span><span>(E_ALL);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"初始化完成,准备开始文章内容展示...\n"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
</span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 正文开始</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"<h1>用 array_fill_keys 如何创建一个初始为空的用户权限表?PHP 实战解析</h1>"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"<p>在 PHP 开发中,我们经常需要为一组用户或者角色初始化权限表。假设有一个用户列表,每个用户初始的权限为空(或者默认值为 null),那么如何高效地生成这样的数组呢?PHP 提供了一个非常方便的函数:<code>array_fill_keys
";
echo "假设我们有以下用户:
"; echo "\$users = ['alice', 'bob', 'charlie'];"; echo "
我们希望为每个用户初始化一个空权限数组:
"; echo "\$permissions = array_fill_keys(\$users, []);"; echo "
执行后,\$permissions 的内容如下:
"; echo ""</span></span><span>; </span><span><span class="function_ invoke__">print_r</span></span><span>(</span><span><span>$permissions</span></span><span>); </span><span><span>echo</span></span><span> </span><span><span>""; echo "
如果我们希望每个用户初始权限不是空数组,而是某个默认值,比如 'read' 权限:
"; echo "\$permissions = array_fill_keys(\$users, ['read']);"; echo "
结果如下:
"; echo ""</span></span><span>; </span><span><span class="function_ invoke__">print_r</span></span><span>(</span><span><span>$permissions</span></span><span>); </span><span><span>echo</span></span><span> </span><span><span>""; echo "
通过 array_fill_keys,我们可以快速创建键为用户名(或角色名)、值为初始权限的数组,省去了使用循环手动赋值的麻烦,非常适合在初始化用户权限表时使用。
"; ?>