1

スクリプトの特殊文字に問題があります。

これは私がこれまでに持っているものです:

$curlstrip = explode("&", $data);
$filename = substr(htmlEntities($curlstrip[5]), 2);

$data'のような特別な文字が含まれている場合'、必要な文字列のチャンクを取得する代わりに、最初の部分のみを取得します。より詳細な例:

$data = "12er&sdsretdgsd&file=Chris ' 19 &blabla"

スクリプトは、Chrisの後に'を読み取り、異なる値を持ちます'$curlstrip[5]

希望は十分に明確です。

LE。この例に従う:

$data = "12er&sdsretdgsd&file=Chris ' 19 &blabla"
$curlstrip = explode("&", $data);
$curlstrip[0] = '12er';
$curlstrip[1] = 'sdsretdgsd';

しかし

$curlstrip[2] = 'file=Chris' instead of 'file=Chris ' 19'

これは、'が次のように読み取られているためです。

'

どうも、

クリスティアン。

4

2 に答える 2

1

試す:

$curlstrip = explode("&", html_entity_decode($data));
$filename = substr(htmlEntities($curlstrip[5]), 2);

提供されたコードではエラーを再現できないので、次のような予感があります。

$data=str_replace("'","'", $data);
$curlstrip = explode("&", html_entity_decode($data));
$filename = substr(htmlEntities($curlstrip[5]), 2);

何らかの理由で、$data に && (2 つのアンパサンド) が隣り合って発生すると、explode 関数に干渉します。

于 2010-11-01T16:49:38.723 に答える
0

htmlentities をデータに対して最後に呼び出すようにします。

$filename = htmlentities(substr($curlstrip[5], 2));

それとは別に、あなたがしていることを処理する関数があります。parse_strはクエリ文字列から配列を作成します。parse_urlを使用して、URL からクエリ文字列を抽出できます。

于 2010-11-01T16:21:19.453 に答える