我从这样的数据库中获取数据
// Get WPDB Object
global $wpdb;
// Table name
$table_name = $wpdb->prefix . "postmeta";
$layers = $wpdb->get_results( "SELECT meta_value FROM $table_name WHERE meta_key = '_moon_sortable_content'" );
然后我回应所有的值
// Iterate over them
foreach($layers as $key => $value) {
foreach($value as $breakingbad) {
echo $breakingbad;
}
}
返回Beach Day? || 309px || 838px || Array
四个值..我有点困惑的是如何将每个值转换为变量,例如。
$top = 309px
$left = 838px
$content = Beach Day?
我会怀疑这样的事情$breakingbad['top'], $breakingbad['left'], $breakingbad['content']
(是的,我在看这个大声笑时看着坏了)。我一直都看到这一点,我只是不确定这样做的正确方法,学习正确的术语会很棒,所以我可以谷歌这个信息,任何与此相关的链接都很棒,也是你的洞察力会让我的一天!
var_dump的结果:
object(stdClass)#282 (1) { ["meta_value"]=> string(21) "I am changing text..." }
object(stdClass)#283 (1) { ["meta_value"]=> string(20) "288.00001525878906px" }
object(stdClass)#284 (1) { ["meta_value"]=> string(5) "808px" }
object(stdClass)#285 (1) { ["meta_value"]=> string(5) "Array" }
以下是表格的内容:
答案 0 :(得分:0)
好$value
是包含这4个值的数组。这意味着你必须为$value['top']
做顶部。
我建议你学习一下阵列。 将数组视为变量列表。每个变量都可以通过密钥访问。
答案 1 :(得分:0)
使用explode()
:
$string = "Beach Day? || 309px || 838px || Array";
$string = explode(" || ", $string);
$top = $string[1]; // 309px
$left = $string[2]; // 838px
$content = $string[0]; //Beach Day?
答案 2 :(得分:0)
您可以使用explode。
// Iterate over them
foreach($layers as $key => $value) {
foreach($value as $breakingbad) {
// split string with || as delimiter
$split = explode('||', $breakingbad);
$content = $split[0];
$top = $split[1];
$left = $split[2];
$array = $split[3];
}
}
请注意,仅当每个数据的字符串格式一致时,此方法才有效。您的最后一项是一个数组,因此您必须遍历它以检索其值。