array_push() を試してみましたが、致命的なエラーが発生します。
function get_data($table, $id = '', $condition){
if($id != '')
array_push( " WHERE `id` = '".$id."' ", $condition );
...
}
問題は、配列の先頭に値 (私の場合は文字列) を追加する方法です。
array_unshift()
あなたが探している機能です!
array_unshift — 配列の先頭に 1 つ以上の要素を付加する
$arr = array(1,2,3);
print_r($arr);
/*
Array
(
[0] => 1
[1] => 2
[2] => 3
)
*/
array_unshift($arr,0);
print_r($arr);
/*
Array
(
[0] => 0
[1] => 1
[2] => 2
[3] => 3
)
*/
致命的なエラーは、引数の順序が逆になっているためです。
function get_data($table, $id = '', $condition){
if($id != '')
array_push($condition, " WHERE `id` = '".$id."' " );
...
}
$condition が配列の場合、致命的なエラーにはなりませんが、アイテムは配列の最後に配置されます。他の回答で述べたように、array_unshift は項目を追加する関数です。
array_unshiftはトリックを行う必要があります