- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在尝试创建一个类来处理数组,但我似乎无法让 array_map()
在其中工作。
<?php
//Create the test array
$array = array(1,2,3,4,5,6,7,8,9,10);
//create the test class
class test {
//variable to save array inside class
public $classarray;
//function to call array_map function with the given array
public function adding($data) {
$this->classarray = array_map($this->dash(), $data);
}
// dash function to add a - to both sides of the number of the input array
public function dash($item) {
$item2 = '-' . $item . '-';
return $item2;
}
}
// dumps start array
var_dump($array);
//adds line
echo '<br />';
//creates class object
$test = new test();
//classes function adding
$test->adding($array);
// should output the array with values -1-,-2-,-3-,-4-...
var_dump($test->classarray);
这输出
array(10) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> int(4) [4] => 整数 (5) [5]=> 整数 (6) [6]=> 整数 (7) [7]=> 整数 (8) [8]=> 整数 (9) [9]=> 整数 (10 ) }
警告:test::dash() 缺少参数 1,在第 11 行的 D:\xampp\htdocs\trainingdvd\arraytesting.php 中调用并在 D:\xampp\htdocs\trainingdvd\arraytesting 中定义。第 15 行的 php
警告:array_map() 期望参数 1 是一个有效的回调,未找到函数“--”或 D:\xampp\htdocs\trainingdvd\arraytesting.php 中第 11 行 NULL 中的函数名称无效
我做错了什么,还是这个函数在类中不起作用?
最佳答案
您以错误的方式将 dash
指定为回调。
这不起作用:
$this->classarray = array_map($this->dash(), $data);
这样做:
$this->classarray = array_map(array($this, 'dash'), $data);
了解回调可能采用的不同形式here .
关于php - array_map 在类里面不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5422242/
我是 Laravel 的新手。为什么我总是收到错误: array_map(): Argument #2 should be an array ? 而我在此方法上分配参数数组? 这是我的示例代码: $p
这三种方法之间的性能差异是什么(如果有的话),都用于将一个数组转换为另一个数组? 使用 foreach 将 array_map 与 lambda/closure 函数一起使用 将 array_map
我有一个看起来像这样的抽象类: abstract class Transformer { /** * Transform a collection of items *
我想将 array_map 与静态方法一起使用,但失败了。这是我的代码: Class Buy { public function payAllBills() { $bill_l
我有一个名为 createCost 的函数,在该函数内部,我有一个 array_map ,它接受一个数组和一个名为 checkDescription 的函数,该函数位于 createCost 中。下面
这是我的代码: $sc = 'hello 8491241 some text 6254841 some text 568241 414844:412'; preg_match_all('/[0-9]{
起初我有这个(在 wamp 中工作但不在我的网络服务器中) $ids = array_map(function($item) { return $item['user_id']; }, $data['
这是我的代码: $sc = 'hello 8491241 some text 6254841 some text 568241 414844:412'; preg_match_all('/[0-9]{
我有一个这样的数组: $a = array('aa', 'bb', 'cc', 'dd'); 我想在数组所有元素的开头添加“rq”字符串。是否可以通过在此数组上调用 array_map() 来实现?
以下代码正在抓取我的 apache 网络服务器。当我从 parse_service_rows() 中删除数据库查询时,apache 不会崩溃。 我还试图在没有帮助的情况下从查询中删除 WHERE 子句
这个问题在这里已经有了答案: Generate an associative array from an array of rows using one column as keys and ano
在下面的代码中,传递给 wrap_map 的回调函数在外部函数中看不到参数,为什么? (详见代码注释) public static function wrap_implode($ar, $wrap,
我正在尝试创建一个类来处理数组,但我似乎无法让 array_map() 在其中工作。 classarray = array_map($this->dash(), $data); } // dash f
我正在尝试找到在多维数组上使用 array_map('mysql_real_escape_string', $data); 的解决方案,如果 $data 是多维的,php 会返回错误。干杯 最佳答案
class theClass{ function doSomeWork($var){ return ($var + 2); }
我用 array_map here 测试了内联匿名函数 它有效,但是当我尝试使用 $user_meta 时它不起作用。 $user_meta = Array ( [interest] => Array
代码如下: /*函数array_map()函数:多数组回调函数---将回调函数作用到给定数组的单元上 * 1、语法:array array_map ( callback
在一个 PHP Web 项目中,classes 文件夹中有两个子文件夹,如下所示: 项目\类\应用程序 项目\类\实用程序 在实用程序子文件夹中有一个名为 Cleanse 的类。这是该类中部分代码的副
有时,为了兼容很多php框架上的activerecord,我们有一个数组,然后创建一个临时数组来适应它。 所以,如果我们不需要创建一个临时数组,那就更优雅了。我最喜欢的是array_map。如果这样的
使用规范的 PHPdoc 示例,此代码: 输出 数组 ( [0] => 27 [1] => 64 [2] => 125 ) 但我真正希望它输出的是这些内容:数组 (
我是一名优秀的程序员,十分优秀!