Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/241.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-SQL数组结构_Php_Sql - Fatal编程技术网

PHP-SQL数组结构

PHP-SQL数组结构,php,sql,Php,Sql,我很难理解二维php数组, 在我的数据库中,我有一个存储URL的表,它与另一个以1:N关系存储标记的表相关,这些表如下所示: URL ID ---> URL_ID ID TAG url, url_id, tag, tag_id 我试图获取这个结构并将其存储在PHP类中,但我不明白 class Url extends databaseobject{ $list = [ "url" =&g

我很难理解二维php数组, 在我的数据库中,我有一个存储URL的表,它与另一个以1:N关系存储标记的表相关,这些表如下所示:

URL         
ID    --->  URL_ID
            ID
            TAG
url, url_id, tag, tag_id
我试图获取这个结构并将其存储在PHP类中,但我不明白

class Url extends databaseobject{

    $list = [

        "url" =>,
        "tags" => []


    ];
                                }
有人能帮我建立正确的数据库结构吗?

这是结构

$list  = array(
          1 => array(
            'URL_ID' => 1
            'ID' => 1
            'TAG' => 'hiiiii'
          ),  
          2 => array(
            'URL_ID' => 1
            'ID' => 2
            'TAG' => 'hello'
          ),
       ); 

应该是这样的

db_url db_tags id url id url_id tag |---------------------| 因此,当您需要保存URL列表及其相应的标记时

$url_tags = new UrlTags();

$url_tags->$id = 1;
$url_tags->$url = 'http://www.example.com';
$url_tags->$tags[0] = 'zero';
$url_tags->$tags[1] = 'one';
$url_tags->$tags[2] = 'two';
或者采用更加面向对象的风格:


假设您正在迭代两个表连接的结果集,那么结果集中的每一行都是这样的:

URL         
ID    --->  URL_ID
            ID
            TAG
url, url_id, tag, tag_id
还假设您正在使用的任何适配器都会创建某种可迭代的结果集,然后在迭代时(这是一种伪代码,不知道您正在使用的适配器):


然后可以将数组添加为类的属性。

每个url都有几个标记,这是否意味着tag=>也将是一个数组?在mysql查询之后,我需要以友好的方式填充它。我认为response$list是所有“tag”记录的数组,它引用了它所属的URL。我假设还有第二个数组,$URL\u List=array(1=>“”,2=>“”)。。。
$list = array();
while($arr = $your_adapter's_current_row){
    if(empty($list[$arr[$url_id]]) {
        $list = array(
            'URL_ID' => $url_id,
            'URL' => $url,  
            'TAGS' => array()
        }
        $list[$arr[$url_id]]['TAGS'][$tag_id] = $tag;
}