

以下の文字列検索のプログラムで
foreach($ptr){
foreach($str){
print "<tr><td>{$ptr}</td><td>{$str}</td>";
$mt = preg_match("/". $ptr . "/", $str)
変数&ptrと$strだけの変数で指定したら
Parse error: syntax error, unexpected ')' in C:\xampp\htdocs\YPHPSample\9\Sample9-4.php on line 24エラーが出ました。
なぜ、変数$valueptrと$valuestrにわざわざ変換しないといけない理由は何ですか?
上記プログラムが単純で分かりやすいのですが?
宜しくお願いします。
<!DOCTYPE html>
<html>
<head>
<title>文字列検索</title>
</head>
<body>
<?php
$ptr = array("Apple", "GoodBye", "Thankyou") ;
$str = array("Hello", "GoodBye", "Thankyou");
?>
<table border="2">
<tr bgcolor="#AAAAAA">
<th>パターン</th>
<th>文字列</th>
<th>マッチ</th>
</tr>
<?php
foreach($ptr as $valueptr) {
foreach($str as $valuestr) {
print "<tr><td>{$valueptr}</td><td>{$valuestr}</td>";
$mt = preg_match("/". $valueptr . "/", $valuestr)
? "〇": "×";
print "<td>{$mt}</td></tr>\n";
}
}
?>
</table>
</body>
</html>
No.1ベストアンサー
- 回答日時:
$ptr、$strは配列だからこそforeach()を使ってると思いますが。
foreach()は配列の中身を1つずつ取り出す命令です。
取り出した値を得るのが$valueptr、$valuestrになります。
それが言語仕様です。
どの言語でも、ループ命令によって元の配列変数が変化する言語はありません。
それが実装およびパフォーマンスとして問題があるなら、配列以外の実装を検討すべきでしょう。
ご回答くださいましてありがとうございました。
>ループ命令によって元の配列変数が変化する言語はありません。<
の意味を知れべます。
参考書を再度読み直しています。
しばらくお待ちください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
配列をループでたくさん宣言し...
-
String だと「 ByRef引数の型が...
-
PHP掲示板で新着順に表示させた...
-
preg_match_all、余計な文字を...
-
fgetsで取り込んだ文字をexplod...
-
$_SESSIONに二次元配列を使える...
-
Smartyについて
-
ネストが深い時のforeachはどう...
-
csvの文字置換プログラム
-
プルダウンメニューにDBの内容...
-
自動で番号を振りたい
-
CSVデータを正規表現で抜き出せ...
-
PHP5でCSVの指定行データだけを...
-
ログファイルが一定行数を超え...
-
C言語の配列をPush(追加)する...
-
phpの関数について質問です!
-
stdClass Objectを連想配列のよ...
-
fgetc関数について
-
Excel VBAでフィルター後の対象...
-
配列からプルダウン用のHTMLを生成
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
$_SESSIONに二次元配列を使える...
-
String だと「 ByRef引数の型が...
-
配列をループでたくさん宣言し...
-
file_existsでファイル名の部分...
-
配列一致(要素順番は違うが内容...
-
foreachで多次元配列にしたくな...
-
配列を回すとき、最後の要素だ...
-
正規表現についての質問
-
増える数字を配列に全て格納し...
-
MySQL接続・カテゴリわけ
-
CakePHPのfindの取得件数は?
-
すべての変数の値をリセットする
-
PHPで配列をPOSTデータで送った...
-
ネストが深い時のforeachはどう...
-
PHPにてクラスを配列にすること...
-
配列の値の更新方法について
-
foreachのなかで次のキーを参照...
-
【PHP】配列内のある値以上をカ...
-
配列に入っている数を調べる方...
-
array_push関数について
おすすめ情報
これは!配列の基礎からじっくり読まないと理解できないみたいですね
今読んでいます。
お待ちください。
あっちこっちの配列類の参考書を見ています。
古い参考書の配列の説明に
配列とは「タンス」のようなもの
と書いてありました。
ちゃんとまだ読んではいないのですが、
$ptr と$strが、タンスとした場合、$valueptrと$aluestrはタンスの引き出し名となる!?
そんな感じかな・・・今いところそう考えた方がうまく説明できる。
多分そうでしょう・・・
解決とします。