![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_01.png?5a7ff87)
以下の文字列検索のプログラムで
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で質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Selenium.ChromeDriverの使い方について 7 2022/09/22 06:43
- PHP htmlで複数の個数入力欄を表示させるには 1 2022/09/20 03:11
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- HTML・CSS テーブルタグのセルの幅の一部だけを指定 1 2023/03/12 12:02
- HTML・CSS 自身のHPにYouTube動画を貼り付けるのが出来なくなり困ってます 1 2022/11/11 10:44
- HTML・CSS 【CSS】:hasで可能? imgを含むtr要素を選択したい 1 2022/11/17 14:36
- MySQL SQL任意に並び替えをしたい 2 2023/08/28 10:47
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
String だと「 ByRef引数の型が...
-
連想配列のprint_rやvar_dump出...
-
foreachのなかで次のキーを参照...
-
漢字のソートについて
-
file_existsでファイル名の部分...
-
配列を回すとき、最後の要素だ...
-
$_SESSIONに二次元配列を使える...
-
PHP初心者です whileの回数を...
-
【PHP】count( )の結果に納...
-
PHPでドメイン検索?
-
Smartyのテンプレートからjavas...
-
Doctrine(ORM)での複数行Insert
-
セッション配列の取得の仕方
-
phpのfor文の中で配列を作りた...
-
テーブルの行と列の入れ替えは可?
-
preg_replace ereg_replace
-
fgetsで取り込んだ文字をexplod...
-
emptyとcount
-
多次元配列から任意の配列を取...
-
parse_ini_file関数について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
$_SESSIONに二次元配列を使える...
-
file_existsでファイル名の部分...
-
配列をループでたくさん宣言し...
-
foreachのなかで次のキーを参照...
-
String だと「 ByRef引数の型が...
-
PHPのカッコ[ ]の使い方について
-
配列を回すとき、最後の要素だ...
-
配列一致(要素順番は違うが内容...
-
チェックボックス複数選択 mys...
-
漢字のソートについて
-
postgresql関数をつかったレコ...
-
ネストが深い時のforeachはどう...
-
URLのサブドメインとドメイン部...
-
OCI で、SELECT結果行数を取得...
-
【Smarty】foreach関数やsectio...
-
$_POSTを一括してサニタイズし...
-
phpで、連想配列を普通の配列に...
-
チェックボックスが複数選択で...
-
連想配列のprint_rやvar_dump出...
-
PHP 配列の添字に変数は使えない?
おすすめ情報
これは!配列の基礎からじっくり読まないと理解できないみたいですね
今読んでいます。
お待ちください。
あっちこっちの配列類の参考書を見ています。
古い参考書の配列の説明に
配列とは「タンス」のようなもの
と書いてありました。
ちゃんとまだ読んではいないのですが、
$ptr と$strが、タンスとした場合、$valueptrと$aluestrはタンスの引き出し名となる!?
そんな感じかな・・・今いところそう考えた方がうまく説明できる。
多分そうでしょう・・・
解決とします。