相关疑难解决方法(0)

PHP在foreach中通过引用传递

我有这个代码:

$a = array ('zero','one','two', 'three');

foreach ($a as &$v) {

}

foreach ($a as $v) {
  echo $v.PHP_EOL;
}
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么输出是:零一二二.

来自zend认证学习指南.

php

177
推荐指数
7
解决办法
10万
查看次数

PHP foreach更改原始数组值

我是多维数组中的新手,这让我很烦恼.

我的数组如下:

$fields = array(
    "names" => array(
         "type"         => "text",
         "class"        => "name",
         "name"         => "name",
         "text_before"  => "name",
         "value"        => "",
         "required"     => true,
    )
)
Run Code Online (Sandbox Code Playgroud)

然后我得到一个函数检查是否填写了这些输入,如果需要的话.

function checkForm($fields){
    foreach($fields as $field){
        if($field['required'] && strlen($_POST[$field['name']]) <= 0){
            $fields[$field]['value'] = "Some error";
        }
    }
    return $fields;
}
Run Code Online (Sandbox Code Playgroud)

现在我的问题是这一行

$fields[$field]['value'] = "Some error";
Run Code Online (Sandbox Code Playgroud)

我想更改原始数组的内容,因为我正在返回它,但是如何在foreach循环中获取当前数组的名称(本例中的名称)?

php arrays foreach

127
推荐指数
3
解决办法
16万
查看次数

PHP foreach更改数组值

如果你有一个类似下面的foreach循环,我知道你可以通过改变数组的当前元素$array[$key],但是还有一种方法可以改变它$value吗?

foreach($array as $key => $value){

}
Run Code Online (Sandbox Code Playgroud)

它可能非常简单,但我对PHP很新,所以请不要被我的问题烦恼:)

php foreach

3
推荐指数
1
解决办法
3298
查看次数

如何通过foreach循环修改数组的值?

所以我有这个foreach循环 - 我想根据我对值的修改来修改数组.但是,当我尝试稍后将$ bizaddarray转换为字符串时,所有HTML标记仍然存在.这是我的foreach循环 - 如何使条带标签永久化?

    foreach ($bizaddarray as $value) {
        strip_tags(ucwords(strtolower($value)));
    }
Run Code Online (Sandbox Code Playgroud)

php foreach

2
推荐指数
1
解决办法
524
查看次数

PHP更改多维数组中项目的值

我已经对此进行了研究,但是找到的答案并没有解决我的问题。我想将所有用户名项更改为 'kk',但之后打印数组显示没有任何更改。可能有什么问题?

<?php
$myArray = Array(
    0 => Array(
        'sender' => kk,
        'message' => hhiui,
        'timestamp' => '2017-02-04 10:04:57',
        'username' => '',
        'msgtype' => 0,
        'threadid' => 20737047302042017230457
    ) ,
    1 => Array(
        'sender' => kk,
        'message' => hhiui,
        'timestamp' => '2017-02-04 10:04:57',
        'username' => '',
        'msgtype' => 0,
        'threadid' => 20737047302042017230457
    ) ,
    2 => Array(
        'sender' => kk,
        'message' => hhiui,
        'timestamp' => '2017-02-04 10:04:57',
        'username' => '',
        'msgtype' => '16',
        'threadid' => 20737047302042017230457
    )
);

foreach($myArray as …
Run Code Online (Sandbox Code Playgroud)

php arrays multidimensional-array

0
推荐指数
1
解决办法
1602
查看次数

在PHP上添加数组上的字段

我正在尝试在数组中添加一个字段并返回它,但据说var_dump,没有对数组进行任何更改.执行if块中的指令,数据似乎正确.

function addLength($toAdd, $added){
   $result = $toAdd;
    foreach ($result as $row) {
        foreach ($added as $key => $value) {
            if($key == $row['id'] ){
                $row['length'] = $value;   
            }
        } 
    }
    var_dump($result);
    return $result;
}
Run Code Online (Sandbox Code Playgroud)

php

0
推荐指数
1
解决办法
1884
查看次数

如何更新数组内的值?

我正在使用 PHP ,我有一个数组,我正在根据某些条件更新数组内的值,它出现在 if 块内,但该值没有更新,您能给我一些建议吗?我错过了什么吗..?

$data['bookslist'] 的转储

Array
(
    [0] => Array
        (
            [id] => 22
            [book_name] => tank1
            [book_type] => 1
            [status] => 1
        )

    [1] => Array
        (
            [id] => 23
            [book_name] => g1
            [book_type] => 2
            [status] => 1
        )
)
Run Code Online (Sandbox Code Playgroud)

代码

foreach($data['bookslist'] as $value){
            if(array_key_exists('book_type',$value)){

                if($value['book_type'] == '1'){
                    $data['bookslist'][$value]['book_type'] = 'Horror';
                    break;
                }
                if($value['book_type'] == '2'){
                    $value['book_type'][$value]['book_type']= 'Comedy';
                    break;
                }
                
            }
        }
Run Code Online (Sandbox Code Playgroud)

php arrays foreach

0
推荐指数
1
解决办法
5089
查看次数

标签 统计

php ×7

foreach ×4

arrays ×3

multidimensional-array ×1