سؤال

ولدي سلسلة CSV مضمن ضمن وثيقة XML، وهو أمر ضروري لمخطط فلاش التي تستخدم XML. والمشكلة هي أن الرسم البياني يحصل الإعدادات من ملف HTML من خلال قصاصة جافا سكريبت، كما يلي:

<script type="text/javascript">
        // <![CDATA[        
        var so = new SWFObject("/gr/amstock.swf", "line", "100%", "100%", "8", "#FFFFFF");
        //so.addVariable("path", "../amline/");
        so.addVariable("chart_settings", escape('<settings><number_format><thousands_separator></thousands_separator><decimals_separator><![CDATA[.]]></decimals_separator></number_format><number_format><thousands_separator></thousands_separator><decimals_separator><![CDATA[.]]></decimals_separator></number_format><redraw><![CDATA[true]]></redraw><data_sets><data_set did="0"><color><![CDATA[#00688B]]></color><csv><separator><![CDATA[,]]></separator><date_format><![CDATA[MM/DD/YYYY]]></date_format><data><![CDATA[03/29/09,0
03/30/09,0
03/31/09,0
04/01/09,0
04/02/09,0</data><columns>...

وهكذا، ومن الواضح أن أسطر جديدة كسر جافا سكريبت (الذي يجري رددها متغير PHP). هناك على أية حال لإزالة أسطر جديدة (أو على الأقل وقف أسطر جديدة كسر جافا سكريبت) وحتى الآن لا يزال الحصول على الرسم البياني فلاش لقراءتها بشكل صحيح كملف CSV.

هل كانت مفيدة؟

المحلول

وجرب هذا. إذا كان لا يعمل، ولدي فكرة أخرى.

<?php

// assumes *nix style newlines
echo str_replace( "\n", "\\n", $jsCode );

نصائح أخرى

stringObj.replace("\n","");

وحيث stringObj هو

<script type="text/javascript">
        // <![CDATA[            
        var so = new SWFObject("/gr/amstock.swf", "line", "100%", "100%", "8", "#FFFFFF");
        //so.addVariable("path", "../amline/");
        so.addVariable("chart_settings", escape('<settings><number_format><thousands_separator></thousands_separator><decimals_separator><![CDATA[.]]></decimals_separator></number_format><number_format><thousands_separator></thousands_separator><decimals_separator><![CDATA[.]]></decimals_separator></number_format><redraw><![CDATA[true]]></redraw><data_sets><data_set did="0"><color><![CDATA[#00688B]]></color><csv><separator><![CDATA[,]]></separator><date_format><![CDATA[MM/DD/YYYY]]></date_format><data><![CDATA[03/29/09,0
03/30/09,0
03/31/09,0
04/01/09,0
04/02/09,0</data><columns>...
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top