foreach数组上字符串的str_replace

时间:2018-04-25 07:13:49

标签: php arrays

我试图将一个字符串的一部分替换为另一个值,我正在为我需要创建的一些日志执行此操作,以获得完整的查询。我正在使用PDO。

我想最终在日志上打印正确的查询。

    public function queryBindValues($string,$data,$queriesLog) {
    echo gettype($data); //object
    $toArray = (array)$data; //convert to array
    $finalArray = [];

    //remove class name(on key) from array
    foreach($toArray as $k=>$v) {
      $k = str_replace(get_class($data), "", $k);
      $finalArray[$k] = $v;
    }

    /*
    $finalArray
      Array
      (
          [id] => 
          [gender] => vbn
          [status] => 1
          [user_id] => TLDICA
          [last_update] => 2018-04-25
      )
    */

    //string = INSERT INTO type_genders (status, user_id, last_update, gender) VALUES (:status, :user_id, :last_update, :gender);

    foreach($finalArray as $k=>$v) {
      $string = str_replace(":$k", $v, $string);
    }

    echo $string;
    //INSERT INTO type_genders (status, user_id, last_update, gender) VALUES (:status, :user_id, :last_update, :gender)
}

有人能帮助我吗? 谢谢,

0 个答案:

没有答案