array_column()
プロジェクトで使用しましたが、アップロード後に、この機能をサポートしているのは PHP 5.5 以上であることがわかりました。また、使用しているホスティングでは PHP 5.5 以上をサポートしていないと思われます。
そこで、このエラーを修正する別の方法があるかどうかを知りたいです。
array_column
私のプロジェクトでは次のように使用しています:
array_count_values(array_column(json_decode(json_encode($queryResultArray), true), $idForBar));
これはローカルの xampp と wampp でも正常に動作しますが、サーバー上では問題が発生します。代わりの機能や解決策を探しています。
ベストアンサー1
array_column
PHP バージョンがサポートしていない場合は、独自の関数を追加します。
<?php
if (! function_exists('array_column')) {
function array_column(array $input, $columnKey, $indexKey = null) {
$array = array();
foreach ($input as $value) {
if ( !array_key_exists($columnKey, $value)) {
trigger_error("Key \"$columnKey\" does not exist in array");
return false;
}
if (is_null($indexKey)) {
$array[] = $value[$columnKey];
}
else {
if ( !array_key_exists($indexKey, $value)) {
trigger_error("Key \"$indexKey\" does not exist in array");
return false;
}
if ( ! is_scalar($value[$indexKey])) {
trigger_error("Key \"$indexKey\" does not contain scalar value");
return false;
}
$array[$value[$indexKey]] = $value[$columnKey];
}
}
return $array;
}
}