在PHP中使用另一个数组创建关联数组时出现的问题
我正在尝试使用一个对象在PHP中创建一个关联数组。对象是来自数据库的值,称为Category。它只有两个值,一个id和一个name字段 这就是我所拥有的:在PHP中使用另一个数组创建关联数组时出现的问题,php,arrays,associative-array,symfony-3.2,Php,Arrays,Associative Array,Symfony 3.2,我正在尝试使用一个对象在PHP中创建一个关联数组。对象是来自数据库的值,称为Category。它只有两个值,一个id和一个name字段 这就是我所拥有的: $category = $em->getRepository('AppBundle:Category')->findAll(); $stuff = array(); foreach($category as $cat) { $stuff[$cat->getName()] = $stuff[$cat->get
$category = $em->getRepository('AppBundle:Category')->findAll();
$stuff = array();
foreach($category as $cat) {
$stuff[$cat->getName()] = $stuff[$cat->getId()];
}
但我犯了一个严重的错误:
注意:未定义的偏移量:1
我应该说我使用的是Symfony 3。任何帮助都会很好。您的方法是正确的,但是您需要删除
echo
,因为您不想输出任何内容。您还试图从试图输入值的数组中分配值
$stuff[ $cat->getName() ] = $cat->getId();
很抱歉,我刚刚忽略了该值,并用$cat->getId()替换为$stuff[$cat->getId()],并且它工作正常您的$stuff数组没有索引1,因此它将导致该问题 这是由$stuff[$cat->getId()]引起的;,应该是$cat->getId()
我认为这是
$stuff[$cat->getId()]
应该是这个$cat->getId()代码>不是吗?
foreach($category as $cat) {
$stuff[$cat->getName()] = $cat->getId();
}