小编Jam*_*old的帖子

实体 - 属性 - 值表设计

我目前正在为电子商务平台的产品部分设计数据库结构.它需要以这样的方式设计,使得可以销售具有无限多个不同属性的无限数量的不同类型的产品.

例如,笔记本电脑的属性可以是RAM,屏幕尺寸,重量等.书的属性可以是作者,ISBN,出版商等.

似乎EAV结构最合适.

  • 选择一个产品
  • 产品属于属性集
  • 属性集包含属性x和y
    • 属性x是数据类型datetime(存储在attribute_values_datetime中的值)
    • 属性y是数据类型int(存储在attribute_values_int中的值)
  • 每个属性定义表示类型(i,e,x具有列类型 - > datetype)

假设上述情况,我是否可以将选择加入attribute_values_datetime表以获取正确的数据而不获取结果集并在表已知的情况下构建第二个查询?构建这种类型的查询是否会有很大的性能损失,或者下面的内容会更合适(尽管功能较少)

  • 选择一个产品
  • 产品属于属性集
  • 属性集包含属性x和y
    • 属性x是数据类型datetime,但在attribute_values中存储为TEXT
    • 属性y是数据类型int,但在attribute_values中存储为TEXT

mysql sql database-design database-schema entity-attribute-value

26
推荐指数
1
解决办法
1万
查看次数

使用file_get_contents()时无法在'þ'上爆炸

我需要获取远程文件的内容,然后在符号上展开这些内容:"þ".

如果我正在爆炸的字符串只是一个局部变量,我可以使它工作,但我无法使用file_get_contents();

$string = '1þClassic Los 1/10þþ15þ1þTrueþ2þCú';
$parts = explode("þ", $string);
var_dump($parts);
Run Code Online (Sandbox Code Playgroud)

结果:

array(8) {
  [0]=>
  string(1) "1"
  [1]=>
  string(16) "Classic Los 1/10"
  [2]=>
  string(0) ""
  [3]=>
  string(2) "15"
  [4]=>
  string(1) "1"
  [5]=>
  string(4) "True"
  [6]=>
  string(1) "2"
  [7]=>
  string(2) "Cu"
}
Run Code Online (Sandbox Code Playgroud)
$string = file_get_contents('file.txt');
$parts = explode("þ", $string);
var_dump($parts);
Run Code Online (Sandbox Code Playgroud)

结果:

array(1) {
  [0]=>
  string(42) "1þClassic Los 1/10þþ15þ1þTrueþ2þCú"
}
Run Code Online (Sandbox Code Playgroud)

当我使用file_get_contents()时,为什么我不能在该符号上爆炸?

php

7
推荐指数
1
解决办法
250
查看次数

Codeigniter 图片和源 URL

我的 Codeigniter URL 有问题。我有一个控制器“welcome.php”:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Welcome extends CI_Controller {

    function __construct()
    {
        parent::__construct();
    }

    public function index()
    {
        $data['tiung'] = 'index';
        $this->load->view('welcome_message',$data);
    }

    public function dor($bus)
    {
        $data['tiung'] = $bus;
        $this->load->view('welcome_message',$data);
    }
}
Run Code Online (Sandbox Code Playgroud)

和一个视图“welcome_message.php”:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Welcome to CodeIgniter</title>
</head>
<body>
    sesuatu <?php echo $tiung?>
    <img src="fragor.jpg" width="720" height="246" alt=""/>
    ladalah
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

如果我想使用参数访问控制器功能“dor”,我使用以下命令:

localhost/hostname/index.php/welcome/dor/something
Run Code Online (Sandbox Code Playgroud)

它可以工作,但问题是图像未加载。我尝试将图像文件放入 webroot 文件夹、“application”文件夹,甚至“views”文件夹中。但图像仍然无法加载。我应该把图像文件放在哪里?

codeigniter

3
推荐指数
1
解决办法
2万
查看次数