0

MySQL データベースからいくつかのフィールドを取得し、それらを配列に入れています。コードは次のとおりです。

$dataArray = array();

$query_url = "SELECT * FROM videos";
$query_exec = mysql_query($query_url) or die();

while($res = mysql_fetch_array($query_exec)) {
    echo $dataArray[$res['id']] = $res['video'];
    echo "<br />";      
}

これで、「videos」テーブルから取得した youtube ビデオのリストが印刷されました。たとえば、youtube の最後のショートコードのみを取得しようとしています。 ?v=sN8grtFUQYs sN8grtFUQYs のみを取得したい

MySQL データベースから自動的にデータを取得する配列からそれらを取得するにはどうすればよいですか?

4

2 に答える 2

2

おそらくあまり効率的ではありませんが、explode() して end() を呼び出して、配列の最後の結果を取得できます。

$dataArray = array();

$query_url = "SELECT * FROM videos";
$query_exec = mysql_query($query_url) or die();

while($res = mysql_fetch_array($query_exec)) {
    echo $dataArray[$res['id']] = end(explode('?v=',$res['video']));
    echo "<br />";      
}
于 2012-10-28T10:35:03.813 に答える
1
$dataArray = array();

$query_url = "SELECT * FROM videos";
$query_exec = mysql_query($query_url) or die();

while($res = mysql_fetch_array($query_exec)) {
    preg_match( '/[\?\&]v=([^\?\&]+)/', $res['video'], $id );
    echo $dataArray[$res['id']] = $id[1];
    echo "<br />";      
}
于 2012-10-28T10:32:17.640 に答える