Server IP : 192.158.238.246 / Your IP : 3.21.122.130 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/7779/task/7779/cwd/plugins/give/src/TestData/Framework/ |
Upload File : |
<?php namespace Give\TestData\Framework; class MetaRepository { /** @var string */ protected $tableName; /** @var string */ protected $relationshipColumnName; /** * @param string $relationshipColumnName */ public function __construct($tableName, $relationshipColumnName) { global $wpdb; $this->wpdb = $wpdb; $this->tableName = $wpdb->prefix . $tableName; $this->relationshipColumnName = $relationshipColumnName; } public function persist($relationshipID, $metaData) { $values = array_map( function ($metaKey, $metaValue) use ($relationshipID) { return sprintf("( %s, '%s', '%s' )", $relationshipID, esc_sql($metaKey), esc_sql($metaValue)); }, array_keys($metaData), $metaData ); $this->wpdb->query( $this->getSql($values) ); } protected function getSql($values) { $format = "INSERT INTO $this->tableName {$this->getColumns()} VALUES %s"; return sprintf($format, implode(',', $values)); } protected function getColumns() { return sprintf('( %s, meta_key, meta_value )', $this->relationshipColumnName); } }