0

これを機能させることができれば、これは素晴らしい小さなトリックです。数十のデータフォーム(HTML印刷フォーム)にまたがる数十のテーブルからの数百のデータ列があり、それらはすべてphp変数が埋め込まれたhtmlです。非常に正常です。しかし、顧客は、どのフィールドがどこにあるのかを知る必要がありました。これは非常に良い質問です。

それで、私は何をしましたか?データベースのキー付き配列が列名を放棄できるようにするソリューションに取り組みました。見事な動き!変数変数を介してそれを行う必要があることを除いて、何を推測するか、それらは foreach ループでは機能しません。

ここにコードがあります

   if ($_REQUEST['data']=="false"){
        $supera = array("RowService", "RowSite", "RowCustomer", "RowEngineer"); //there can be many of these they are key'd arrays $RowService['column_name_1']; is the format
        foreach($supera as $super){
            foreach(${$super} as $key=>$value){
                if (!is_numeric($key)){
                    ${$super}[$key] = "<span style=\"color:pink;\">".$key."</span>";
                }
            }
        }
    }

ご覧のとおり、実際のデータを表示するのではなく、列名と (おそらく) テーブル名を (ピンク色で) 表示するキー付き配列をカット アンド ペーストする簡単なキル スイッチ メカニズムが必要です。それも。すでに多くのコードが配置されており、これを機能させることができれば、これは素晴らしいオプションです。

編集:これはPHPエラーです:

 Warning: Invalid argument supplied for foreach()

編集: コードは実際にはすでに機能しています: is_array() をテストするための修正です

 if(is_array(${$super})) foreach(${$super} as $key=>$value){

ただではなく、機能します

 foreach(${$super} as $key=>$value){
4

3 に答える 3

0
As per my understanding of your requirement.

If you want to get table name with pink color then you just need to use below code 

$supera = array("RowService", "RowSite", "RowCustomer", "RowEngineer"); //there can be many of these they are key'd arrays $RowService['column_name_1']; is the format
$super = array();
        foreach($supera as $key=>$value){
                if (!is_numeric($value)){
                    $super[$value] = "<span style=\"color:pink;\">".$value."</span>";
                }
        }
        print_r($super);
于 2014-03-20T11:34:25.583 に答える