配列の最近のブログ記事

php 配列 重複削除

| コメント(0)

$unique = array_unique($Gname);//重複削除

$Gname = array_values($unique);//キーの整列

php 配列削除 連番の場合

| コメント(0)

$split = array_splice($prefSale, 7);

先頭から七つ削除する。八つ目以降から切り取り開始

$split = array_splice($prefSale, 0,7);

先頭から七つ目まで切り取り、八つ目以降は削除される

削除と表現するのはどうか?と思いますが、ようするに切り取って貼り付けをスライスとしている。

php 配列 要素の比較

| コメント(0)

$a = array(1,2,3,4,5,6,7,8,9,10);
$b = array(1,3,5,7,9,11);

共通する要素があるってことは、重複しているってこと。
var_dump( array_diff($a, $b) );
//=>
// array(5) {
//   [1]=>
//   int(2)
//   [3]=>
//   int(4)
//   [5]=>
//   int(6)
//   [7]=>
//   int(8)
//   [9]=>
//   int(10)
// }

var_dump( array_intersect($a, $b) );
//=>
// array(5) {
//   [0]=>
//   int(1)
//   [2]=>
//   int(3)
//   [4]=>
//   int(5)
//   [6]=>
//   int(7)
//   [8]=>
//   int(9)
// }

php 配列で一括クエリ

| コメント(0)

      @$tempHtml .= "<input type=\"hidden\" name=\"id[]\" value=".$row["id"].">";

      @$tempHtml .= "<input type=\"hidden\" name=\"code\" value=".$row["code"].">";
      @$tempHtml .= "<input type=\"hidden\" name=\"predate\" value=".$preDate.">";
      @$tempHtml .= "<input type=\"hidden\" name=\"gname\" value=".$preGname.">";
      @$tempHtml .= "<input type=\"hidden\" name=\"cname\" value=".$preCname.">";
      @$tempHtml .= "<input type=\"hidden\" name=\"filename\" value=".$Filename.">";
       
      @$tempHtml .= "<input type=\"hidden\" name=\"price[]\" value=".$row["price"].">";
      @$tempHtml .= "<input type=\"hidden\" name=\"correctbf[]\" value=".$row["correctbf"].">";
      @$tempHtml .= "<input type=\"hidden\" name=\"carry[]\" value=".$row["carry"].">";
      @$tempHtml .= "<input type=\"hidden\" name=\"arrive[]\" value=".$row["arrive"].">";
      @$tempHtml .= "<input type=\"hidden\" name=\"arrivetotal[]\" value=".$row["arrivetotal"].">";

 

 

 

配列で一括クエリ__ポストされている中身は全て配列

         $prefId = $_POST['id'];//$valuea
         $prefPrice = $_POST['price'];//$valueb
    $prefcorrectbf = $_POST["correctbf"];//$valuec
    @$prefcorrectaf = $_POST['correctaf'];//$valued
    $prefcarry = $_POST["carry"];//$valuee
    $prefarrive = $_POST["arrive"];//$valuef
    $prefarrivetotal = $_POST["arrivetotal"];//$valueg
    @$prefinvint = $_POST['invint'];//$valueh
 
 
    while ((list(, $valuea) = each($prefId))
           && (list(, $valueb) = each($prefPrice))
           && (list(, $valuec) = each($prefcorrectbf))
           && (list(, $valued) = each($prefcorrectaf))
           && (list(, $valuee) = each($prefcarry))
           && (list(, $valuef) = each($prefarrive))
           && (list(, $valueg) = each($prefarrivetotal))
           && (list(, $valueh) = each($prefinvint))){
 //計算必要であればここで計算させておく             
                $prefcaftotal = $valued * $valueb;//訂正金額
                $prefcarrya = $valuec + $valued;//繰越数
                $prefcarrytotal = $valuee * $valueb;//繰越金額
                $prefinvtotal = $valueb * $valueh;//棚卸金額
                $prefconsume = $prefcarrya + $valuef - $valueh;//使用済
                $prefcost = $valueb * $prefconsume;//経費
 
              
  // クエリを送信する
  $sql = "UPDATE stockoffice SET correctaf = '".$valued."'";
  $sql .= " ,caftotal = '".$prefcaftotal."'";
  $sql .= " ,carry = '".$prefcarrya."'";
  $sql .= " ,carrytotal = '".$prefcarrytotal."'";
  $sql .= " ,arrive = '".$valuef."'";
  $sql .= " ,arrivetotal = '".$valueg."'";
  $sql .= " ,invint = '".$valueh."'";
  $sql .= " ,invtotal = '".$prefinvtotal."'";
  $sql .= " ,consume = '".$prefconsume."'";
  $sql .= " ,cost = '".$prefcost."'";
  $sql .= " WHERE id = $valuea";
  $result = executeQuery($sql);
 
    }

php 配列 よく使うコード

| コメント(0)

$SumSale = array_sum($prefSale);

○配列の結合

keyが数値の場合、

array_merge($arrayFirst, $arraySecond)

$arrayFirst + $arraySecond_____これは$arrayFirst が優先するので、$arraySecondの一部は打ち消される

配列で一括クエリ__ポストされている中身は全て配列

         $prefId = $_POST['id'];//$valuea
         $prefPrice = $_POST['price'];//$valueb
    $prefcorrectbf = $_POST["correctbf"];//$valuec
    @$prefcorrectaf = $_POST['correctaf'];//$valued
    $prefcarry = $_POST["carry"];//$valuee
    $prefarrive = $_POST["arrive"];//$valuef
    $prefarrivetotal = $_POST["arrivetotal"];//$valueg
    @$prefinvint = $_POST['invint'];//$valueh
 
 
    while ((list(, $valuea) = each($prefId))
           && (list(, $valueb) = each($prefPrice))
           && (list(, $valuec) = each($prefcorrectbf))
           && (list(, $valued) = each($prefcorrectaf))
           && (list(, $valuee) = each($prefcarry))
           && (list(, $valuef) = each($prefarrive))
           && (list(, $valueg) = each($prefarrivetotal))
           && (list(, $valueh) = each($prefinvint))){
 //計算必要であればここで計算させておく             
                $prefcaftotal = $valued * $valueb;//訂正金額
                $prefcarrya = $valuec + $valued;//繰越数
                $prefcarrytotal = $valuee * $valueb;//繰越金額
                $prefinvtotal = $valueb * $valueh;//棚卸金額
                $prefconsume = $prefcarrya + $valuef - $valueh;//使用済
                $prefcost = $valueb * $prefconsume;//経費
 
              
  // クエリを送信する
  $sql = "UPDATE stockoffice SET correctaf = '".$valued."'";
  $sql .= " ,caftotal = '".$prefcaftotal."'";
  $sql .= " ,carry = '".$prefcarrya."'";
  $sql .= " ,carrytotal = '".$prefcarrytotal."'";
  $sql .= " ,arrive = '".$valuef."'";
  $sql .= " ,arrivetotal = '".$valueg."'";
  $sql .= " ,invint = '".$valueh."'";
  $sql .= " ,invtotal = '".$prefinvtotal."'";
  $sql .= " ,consume = '".$prefconsume."'";
  $sql .= " ,cost = '".$prefcost."'";
  $sql .= " WHERE id = $valuea";
  $result = executeQuery($sql);
 
    }
○配列の合計
$TotalTotal = array_sum($ArrayTotal);
○配列でwhere
foreach($tempGidd as $key=>$value) {
$Array[] = "".$value."";
}
$histData = join(',', $Array);
 これで、配列が、1,2,3,4,7,9 になる
 $where = "WHERE ";
$where.= "id in ($histData)";
○配列keyの移動あれこれ
//現在表示されているID「$prefOdid」取得してから配列のキー抽出
     $ArrayKeyNow = array_search(@$prefOdid,$Arraybase);//現在位置キー
            $Move = current($Arraybase);//アクティブなキー
            $Movea = next($Arraybase);//アクティブから次のキー
            $Moveb = reset($Arraybase);//アクティブリセットして先頭に戻す
            $Movec = prev($Arraybase);//アクティブからひとつ前のキー
            $Moved = end($Arraybase);//最後尾のキー

php 配列でwhere抽出条件

| コメント(0)
配列「$tempGidd」には、たとえばチェックボックスでチェックされたランダムなデータid番号は入っている。 
 
foreach($tempGidd as $key=>$value) {
$Array[] = "".$value."";
}
$histData = join(',', $Array);
 
//これで、配列が、1,2,3,4,7,9 になる
 
$where = "WHERE ";
$where.= "id in ($histData)";
または、
where id in ($histData);

配列から要素を取り出す

| コメント(0)
$prefData は、配列
 
$prefDid = $prefData[0];
$Filename = $prefData[1];
$preDate = trim($prefData[1]);//配列要素にスペースが入ってしまうので取り除く

配列の中身の数をカウントする

| コメント(0)

$result count($a);//配列の中身の数をカウントする

reset -- 配列の内部ポインタを先頭の要素にセットする

// ポインタをリセット
reset($array);