小编use*_*092的帖子

使用PHP将JSON转换为CSV格式

我试图使用PHP脚本将json文件转换为csv格式.代码如下:

if (empty($argv[1])) die("The json file name or URL is missed\n");
$jsonFilename = $argv[1];

$json = file_get_contents($jsonFilename);
$array = json_decode($json, true);
$f = fopen('output.csv', 'w');

$firstLineKeys = false;
foreach ($array as $line)
{
    if (empty($firstLineKeys))
    {
            $firstLineKeys = array_keys($line);
            fputcsv($f, $firstLineKeys);
            $firstLineKeys = array_flip($firstLineKeys);
    }

fputcsv($f, array_merge($firstLineKeys, $line));
Run Code Online (Sandbox Code Playgroud)

}

这种工作,但只返回JSON文件的外部变量,并得到一个"数组到字符串转换"警告

JSON数据如下所示:

{"type":"NON_ATTRIBUTED","conversion":{,"value_1":"000000100355321","value_3":"XXXX","value_4":"12667","value_5":"6"},"stream_type":"COOKIE"}
{"type":"ATTRIBUTED","conversion":{,"value_1":"000000167865321","value_3":"YYYY","value_4":"12668","value_5":"0"},"stream_type":"COOKIE"}
{"type":"NON_ATTRIBUTED","conversion":{,"value_1":"000000134535321","value_3":"AAAA","value_4":"12669","value_5":"9"},"stream_type":"COOKIE"}
{"type":"NON_ATTRIBUTED","conversion":{,"value_1":"000000100357651","value_3":"WWWW","value_4":"12670","value_5":"2"},"stream_type":"COOKIE"}
Run Code Online (Sandbox Code Playgroud)

我得到的输出是:类型,转换,stream_type NON_ATTRIBUTED,数组,COOKIE NON_ATTRIBUTED,数组,COOKIE

我期望的输出是:type,conversion,value_1,value_3,value_4,value_5,stream_type NON_ATTRIBUTED,000000100355321,XXXX,1267,6,COOKIE ..

我非常感谢,因为这对我来说很新鲜

php json

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

路线工作不正常

编辑:感谢您的回复,我尝试了下面列出的所有内容,但现在仍然很幸运。如果我输入 localhosts/posts/new 它会将我带到表单,但是当我从导航栏中单击时链接不起作用。我已经更新了代码并包含了我的 rake 路线结果。

我是 ruby​​ 新手,正在学习教程,但是我的一个链接不起作用,不确定发生了什么。

我创建新帖子的导航链接没有将我带到正确的页面,当我单击“posts_path”的链接时,页面不会改变。

我可以通过在地址栏中键入 /posts/new 来创建新帖子,但是当我单击导航栏上的“新帖子”链接时,页面不会更新(尽管 url 显示 /posts)。知道如何解决这个问题吗?

配置/路由.rb

Rails.application.routes.draw do
get 'sessions/new'
root 'static_pages#home'
get  '/search', to: 'static_pages#search'
get  '/login', to: 'sessions#new'
get  '/posts', to: 'posts#new', as: 'new_post'
post  '/login', to: 'sessions#create'
delete  '/logout', to: 'sessions#destroy'
get  '/signup', to: 'users#new'
get 'users/new'
get 'static_pages/home'
get 'posts/new'
get 'sessions/new'
resources :users
resources :account_activations, only: [:edit]
resources :password_resets, only: [:new, :create, :edit, :update]
resources :posts, only: [:new, :create, :destroy]
end
Run Code Online (Sandbox Code Playgroud)

应用程序/视图/布局/_header.html.erb

<header class="navbar …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails ruby-on-rails-3 ruby-on-rails-4

6
推荐指数
1
解决办法
8192
查看次数

Segue之后View Controller消失了

我有一个客户选项卡控制器,该控制器带有一个自定义图标,当用户单击弹出菜单时,该图标带有3个选择。当我单击第一个选项时,它应该带我到新的视图控制器,但是,当我单击它时,视图控制器仅出现一秒钟,然后再次消失。我不确定为什么,但是这是我的客户标签栏代码:

import UIKit
import PopMenu

class TabBarController: UITabBarController, UITabBarControllerDelegate {

    override func viewDidLoad() {
        delegate = self
    }

    func tabBarController(_ tabBarController: UITabBarController, shouldSelect viewController: UIViewController) -> Bool {
        if viewController.title == "for custom action" {
            let manager = PopMenuManager.default

            let action1 = PopMenuDefaultAction(title: "Scan Barcode", didSelect: { action in

                self.performSegue(withIdentifier: "showScanBarcode", sender: nil)
                print("\(String(describing: action.title)) is tapped")
            })

            let action2 = PopMenuDefaultAction(title: "Action 2", didSelect: { action in

                print("\(String(describing: action.title)) is tapped")
            })

            let action3 = PopMenuDefaultAction(title: "Action 3", image: …
Run Code Online (Sandbox Code Playgroud)

ios segue swift

5
推荐指数
2
解决办法
274
查看次数

如何获取标签的文本

我试图抓住被点击的文本.我有一个案例,在同一个类下定义了两个不同的链接,我需要确定点击了哪个链接

<div class="block pdp-estimate-quote">
  <ul>
    <li>
        <a href="#">Estimate Payment</a>
    </li>
    <li>
        <a href="#">Get a Quote</a>
    </li>
  </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

当有人使用链接文本作为描述点击任一链接时,我想抛出GA事件.以下代码抛出一个事件,但它显示了两个链接的文本,而不仅仅是单击的链接.

$('.pdp-estimate-quote a').click(function(){ 
    var ctatext = $(this).closest(".pdp-estimate-quote").find('a').text();
    dataLayer.push({ 'event':'event', 'eventCategory': 'Get Quote', 'eventAction':ctatext, 'eventLabel':{{url path}}  }) 
});
Run Code Online (Sandbox Code Playgroud)

javascript jquery

0
推荐指数
1
解决办法
83
查看次数